Ir para conteúdo
Fórum Script Brasil

Pesquisar na Comunidade

Mostrando resultados para as tags ''vba''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

  1. Ola pessoal... Estou com um pequeno problema com a configuração do meu sistema em VBA... Estou realizando alguns procedimentos e no final coloco -> ActiveWorkbook.Save Com o intuito do VBA salvar a planilha automaticamente, mas acaba que ela não salva e sempre que tento fechar ela pede para eu salvar manualmente. O código completo que estou usando vou deixar abaixo: ------------------------------------------- Private Sub CommandButton7_Click() 'Declarar uma variavel para verificar os campos que estão em branco e informar ao usuário que deve ser preenchido Dim campo(16) As String 'Campos digitados manualmente para que o excel exiba os campos de cada um. campo(1) = "Código" campo(2) = "Nome do Fornecedor" campo(3) = "CNPJ" campo(4) = "Marca" campo(5) = "Nome do Representante" campo(6) = "Contato" campo(7) = "Estado" campo(8) = "Cidade" campo(9) = "Bairro" campo(10) = "Endereço" campo(11) = "Nº" campo(12) = "Complemento" campo(13) = "Status" campo(14) = "Email" campo(15) = "Site" campo(16) = "Descrição do Fornecedor" 'Perguntar ao usuário se ele realmente deseja gravar os dados na base Resposta = Msgbox("Deseja cadastrar/alterar o Fornecedor?", vbQuestion + vbYesNo, "Atenção Usuário") If Resposta = vbNo Then Exit Sub End If 'Caso o usuário queira realmente salvar, então exibir mensagem informando que o Fornecedor foi salvo com sucesso. Msgbox "Fornecedor cadastrado/alterado com sucesso", vbInformation, "Atenção Usuário" 'Declarar variavel que será utilizada para gravar os dados no excel (ln) Dim ln As Integer 'Mandar o Excel procurar a base de dados na qual encontra-se o pedido de compra e adicionar o novo Fornecedor na próxima linha ln = Range("base_fornecedores").Rows.Count + 1 'Gravar os dados na planilha de Cadastro de Produtos For a = 1 To 16 Plan5.Cells(ln, a) = controle_de_cadastro_de_fornecedores(a) Plan5.Range("base_fornecedores").CurrentRegion.Name = "base_fornecedores" Next 'Mandar o excel salvar o arquivo do excel no computador, para que o usuário possa fechar sem ter que salvar manualmente ActiveWorkbook.Save End Sub ------------------------- Se alguém poder me ajudar ficarei bastante grato
  2. Pessoal Boa Noite! Primeiro sou novo no forum então qualquer erro pesso desconsiderarem.. Minha duvida é a seguinte, estou fazendo uma macro em VBA onde tem um agendamento de horario para execução da Macro. Mas o comando que no horario determinado chama outra macro não funciona de jeito nenhum. Coloque o seguinte código: Sub AUTOEXEC() ' ' ' Call Application.OnTime(TimeValue("18:59:00"), "AUTOM") 'Call Application.OnTime(TimeValue("13:20:00"), "AUTOM") End Sub
  3. eu possuo um banco de dados em access com duas tabelas uma chamada TB_Data_Producao onde eu armazeno todos os dados de produção referentes ao tempo (intervalos. data, turno e afins) e outra tabela chamada Producao onde eu recebo a chave estrangeira de TB_Data_Producao segue o codigo: sCommand = "INSERT INTO [Producao] (Att, Producao, Acumulada, Nome_Do_Produto, Data_Producao ) VALUES (""" & ATT & """,""" & Producao & """,""" & Acumulada & """,""" & NomeProd & """, '(SELECT RegistraDia FROM TB_Data_Producao WHERE Data = """ & Data & """ AND Intervalo_De_Tempo = """ & Intervalo & """)"")" eu pretendo pegar esta chave estrangeira dando match na data e no intervalo de tempo, ambos vem nas seguintes formataçoes Data (date) dd/mm/aaaa , Intervalo (string) "hh : mm - hh : mm " e eu recebo o seguinte erro: erro de sintaxe na sequencia de caracteres na expressao de consulta '(SELECT RegistraDia FROM TB_Data_Producao WHERE Data = "23/07/2015" AND Intervalo_De_tempo = "10 : 00 - 11 : 00" )")" , já tentei trocar virgulas já tentei tirar campos , já tentei deixar sem os parenteses, já tentei por o nome da tabela.campo já tentei por colchetes nos campos mas sempre aparece o mesmo erro
  4. Bom Dia Pessoal! Sou novo por aqui e decidi recorrer ao fórum porque já tentei usar todos os meus conhecimentos para resolver um pequeno problema aqui e não consegui... Estou com uma planilha no excel fazendo uso de VBA para controle de estoque, o problema é o seguinte: Tenho 1 aba para fazer entrada ou saída de produtos Tenho outra aba para ver o controle desse estoque A idéia é, quando a operação for uma entrada, ele pegar a quandtidade do produto que está entrando e acrescentar ao campo entradas na aba de controle de estoque, e caso seja uma saída, fazer o mesmo para o campo saída... Seguem alguns prints das 2 abas: O grande problema eu creio que está no uso da propriedade Offset, responsável por fazer saltos entre linhas e colunas. Uso o Ofsset pois ao fazer uma entrada ou saída de produto, preciso localizá-lo na tabela presente na aba relatórios para poder atualizar o valor de entrada/saída na mesma, faço uma busca na tabela recorrendo a uma função, que me devolve o endereço da célula encontrada, no caso o produto que vai ser a entrada/saída, após isso uso o offset para saltar uma ou duas colunas a partir do endereço retornado pela busca, caso seja uma entrada salta uma coluna caso contrario salta duas, e atualiza o campo somando a quantidade do produto que entra/sai.... segue o código que estou utilizando tanto para busca quanto para afetar os campos da tabela contida na aba Relatórios: Código Principal: Public Sub lsIncluirLancamento() Dim lUltimaLinhaAtiva As Long Dim endereco As String Dim valor As String Dim total As String lUltimaLinhaAtiva = Worksheets("Registro de Inventário").Cells(Worksheets("Registro de Inventário").Rows.Count, 1).End(xlUp).Row + 1 'Produto Worksheets("Registro de Inventário").Cells(lUltimaLinhaAtiva, 1).Value = Worksheets("Entrada e Saída").Range("C4").Value 'Tipo movimento If (Worksheets("Entrada e Saída").Range("C10").Value = "Entrada") Then Worksheets("Registro de Inventário").Cells(lUltimaLinhaAtiva, 2).Value = "E" endereco = PROCURAENDERECO(Sheets("Relatórios").Range("A1:L999"), Sheets("Entrada e Saída").Range("C5").Value) ' valor = Sheets("Relatórios").Range(endereco).Offset(0, 1).Value total = valor + Sheets("Entrada e Saída").Range("C12").Value Sheets("Entrada e Saída").Range("B20").Value = total Sheets("Relatórios").Range(endereco).Offset(0, 1).Value = Sheets("Entrada e Saída").Range("B20").Value Else Worksheets("Registro de Inventário").Cells(lUltimaLinhaAtiva, 2).Value = "S" Sheets("Entrada e Saída").Range("B20").Value = PROCURAENDERECO(Sheets("Relatórios").Range("A1:L999"), Sheets("Entrada e Saída").Range("C5").Value) ' End If Função de Busca: Function PROCURAENDERECO(ByVal Area As Range, ByVal Valor_Procurado As String) If Not Area.Find(Valor_Procurado) Is Nothing Then PROCURAENDERECO = Area.Find(Valor_Procurado).Address(0, 0) Else PROCURAENDERECO = CVErr(xlErrNA) End If End Function Quem puder e conseguir dar uma ajuda seria de extrema ajuda... Valeu!
  5. Olá a todos amigos deste maravilhoso fórum , bom vim aqui me lamentar para vocês, porque eu não sei quase nada sobre VBA Excel , por sinal e uma linguagem que eu tenho que aprender muito , porque na empresa em qual eu trabalho , quero me destacar entre todos os funcionários que só sabem mexer no básico do Excel. Bom eu ainda sou bem jovem, 17, rs.. :) Eu montei uma planilha juntamente com meu chefe para a gente ter um controle, mais detalhado das ROs que chegam para a gente.Uma RO , e um registro de ocorrencia, em cada RO existe um numero pra ela, nada D+, bom o que eu queria era , que meu UserForm1 pega-se os dados que estão numa Planilha e retorna-se os valores que eu inseri o numero do RO e clica-se em algum botão de pesquisa e ele já me retonase o valor em Text Box.. Sei que e fácil porem eu sou lerdo no assunto ainda, alguém poderia me ajudar? Vamos lá, eu já fiz um UserForm: Eu queria que quando eu coloca-se determinado numero de RO nesta TextBox e clica-se em PESQUISAR, ele me retorna-se o resto dos campos: Esse Planilha minha possui 11 Colunas. Alguém poderia me ajudar? Poderia fazer um código para mim , e me dizer apenas o que tenho que alterar ? Ficaria eternamente grato, e se precisar de mim estarei disponível. Sou Designer Gráfico e DJ !
  6. Bom dia caros, Estou fazendo uma aplicação em VBA usando o Excel para cadastro de projetos com vários 'forms' O primeiro 'form' chama-se frmCLIENTES que cadastra os dados do cliente O segundo 'form' chama-se frmPROJETOS que cadastra os dados do projeto Estou fazendo assim porque podem existir vários projetos para cada cliente. Os dados do 'form' frmCLIENTES salva na planilha CLIENTES, e o 'form' frmPROJETOS salva na planilha PROJETOS. No frmPROJETOS tenho uma ComboBox que lista o nome de todos os clientes cadastrados na planilha CLIENTES. Quando eu salvo o projeto, o valor da ComboBox é salvo na coluna A da planilha PROJETOS. Até ai tudo certo. O problema vem agora: Eu não gostaria de salvar o valor da ComboBox, gostaria de salvar a referência da célula na planilha CLIENTES onde está localizado o respectivo cliente, ou seja, na coluna A da planilha PROJETOS salvar =CLIENTES!A2 ao invés do valor apresentado na ComboBox. Por que isto? Porque quando eu editar o nome do cliente, os projetos associados tenha o registro também alterado de forma automática. Alguém saberia me ajudar com qual linha de comando eu posso fazer isso? A planilha CLIENTES está assim: E gostaria que a planilha PROJETOS ficasse assim: Claro que no Excel a célula A2 em PROJETOS exibiria o valor "CLIENTE 1" Obrigado. Rafael.
  7. Quando importo os dados do .csv o arquivo vem com lixo e as vezes uma linha vem com as colunas V à Y deslocadas para as colunas Z à AC. Gostaria de fazer um VBA que verifica a coluna Z e caso tenha valor, mover o valor das colunas Z à AC para as colunas V à Y. Tudo isso na mesma linha. Então tenho que verificar a coluna Z, guarda o numero da linha em que contem valor em Z (o restante da coluna geralmente esta em branco) e seleciona as celulas da linha guardada com as colunas Z(linha) à AC(linha) e copie para as colunas V(linha) à Y(linha). Não estou conseguindo fazer esta verificação e guardar o valor da linha. Muito obrigado pela atenção.
  8. Yera

    Criando jogos com VBA

    Pessoal, segue um passo-a-passo bem bacana de como montar um jogo de datilografia com VBA. https://www.youtube.com/watch?v=6Jn9riivo0U Grande abraço.
  9. Boa tarde, Sou usuário novo de VBA e ainda tenho algumas dúvidas primárias... Atualmente trabalho com o programa SAP e consigo através do VBA escrever scripts para o programa citado, tendo em vista que o SAP é um grande programa e permite a possibilidade de comunicação entre VBA e SAP. Assim é possível aumentar a produtividade de diversos departamentos e operações da cia. Porém, em contato com um fornecedor, cujo tamanho é de microempresa, eles não possuem sistema SAP, o sistema que eles utilizam é um sistema genérico, feito por uma outra empresa pequena especificamente para eles, ou seja, não encontrei nada sobre o sistema em questão nos forúns... Minha pergunta/dúvida é : É possível eu fazer o "link" entre o VBA e um sistema "qualquer" ?? Caso positivo, como eu realizo a criação desse "link" ? Se tiverem exemplos de codigos genéricos me ajudaria muito!! Fico no aguardo de respostas, Obrigado pela atenção!
  10. Boa tarde galerinha! É o seguinte estou utilizando um código na textbox neste formato: Private Sub txt_id_AfterUpdate() Dim Linha As Long Dim id As Long 'mudar para string se o id tiver letras ou símbolos If Val(Me.txt_id) = 0 Then Exit Sub End If Plan1.Activate Linha = 2 id = txt_id Do Until Cells(Linha, 1) = "" 'vai executar o laço até encontrar uma célula vazia 'Condição para localizar o registro If Cells(Linha, 1) = id Then 'se encontrar o valor registro na célula pesquisada opt_funcionario = Cells(Linha, 2) opt_exfuncionario = Cells(Linha, 3) opt_ativo = Cells(Linha, 4) opt_inativo = Cells(Linha, 5) txt_razao = Cells(Linha, 6) txt_endereço1 = Cells(Linha, 7) txt_bairro01 = Cells(Linha, 8) txt_complemento = Cells(Linha, 9) cmb_cidade01 = Cells(Linha, 10) txt_cep01 = Cells(Linha, 11) cmb_uf01 = Cells(Linha, 12) Exit Sub 'interrompe o código quando encontrar o código e preencher os dados End If Linha = Linha + 1 Loop End Sub Eu preciso que esse campo aceite somente números sendo que eu não posso mudar o private pois o id digitado nessa textbox ao pressionar enter ele irá busca os dados do usuário na planilha e preencher os campos corretos. Alguém pode me ajudar?
  11. Olá pessoal , o meu código abaixo está imprimindo todo o conteúdo de uma planilha, são 34 registros. Mas quando uso o filtro pra imprimir só alguns registros ele continua imprimindo tudo (todos os 34) Alguém poderia me ajudar? Sub Macro1() Dim i As Long Dim UltimaLinha As Long Dim answer As Integer answer = MsgBox("Você realmente deseja imprimir todo conteúdo", vbYesNo + vbQuestion, "Confirmar!!") If answer = vbYes Then UltimaLinha = Sheets("Dados Pessoais").Cells(Cells.Rows.Count, 1).End(xlUp).Row For i = 5 To UltimaLinha Sheets("Dados Pessoais").Range("A" & i).Copy Destination:=Sheets("Folha de Pagamento").Range("J3") ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False Next Application.CutCopyMode = False Else End If End Sub
  12. Boa tarde, Por favor, vocês poderiam me ajudar? Sou um novo usuário de Excel e criei um macro que copia algumas colunas de uma tabela ("formatea file de nemag e mastersoft_2014_06.xlsm") e cola em uma outra ("br_kpis_jan_2015_salvo_automaticamente.xlsx"). Depois de ter gravado o macro, mandei rodar e deu certo. Porém, quando fechei minhas planilhas e abri de novo, aparecia o seguinte erro: "Erro de tempo de execução '9': Subscrito fora do intervalo" Eu já alterei os nomes das planilhas para tudo minúsculo e tirei os acentos, mas ainda não obtive êxito. Vocês sabem o que pode ter dado errado? O código é esse: " Sub SUBSTITUICAO() ' ' SUBSTITUICAO Macro ' Este macro substitui os valores de todas as colunas sem formula. ' ' Atalho do teclado: Ctrl+u ' Windows("formatea file de nemag e mastersoft_2014_06.xlsm").Activate ActiveWindow.ScrollColumn = 83 ActiveWindow.ScrollColumn = 77 ActiveWindow.ScrollColumn = 75 ActiveWindow.ScrollColumn = 74 ActiveWindow.ScrollColumn = 72 ActiveWindow.ScrollColumn = 68 ActiveWindow.ScrollColumn = 66 ActiveWindow.ScrollColumn = 62 ActiveWindow.ScrollColumn = 61 ActiveWindow.ScrollColumn = 58 ActiveWindow.ScrollColumn = 56 ActiveWindow.ScrollColumn = 54 ActiveWindow.ScrollColumn = 44 ActiveWindow.ScrollColumn = 39 ActiveWindow.ScrollColumn = 38 ActiveWindow.ScrollColumn = 37 ActiveWindow.ScrollColumn = 36 ActiveWindow.ScrollColumn = 35 ActiveWindow.ScrollColumn = 34 ActiveWindow.ScrollColumn = 33 ActiveWindow.ScrollColumn = 32 ActiveWindow.ScrollColumn = 31 ActiveWindow.ScrollColumn = 30 ActiveWindow.ScrollColumn = 29 ActiveWindow.ScrollColumn = 28 ActiveWindow.ScrollColumn = 27 ActiveWindow.ScrollColumn = 26 ActiveWindow.ScrollColumn = 25 ActiveWindow.ScrollColumn = 24 ActiveWindow.ScrollColumn = 23 ActiveWindow.ScrollColumn = 22 ActiveWindow.ScrollColumn = 21 ActiveWindow.ScrollColumn = 20 ActiveWindow.ScrollColumn = 19 ActiveWindow.ScrollColumn = 18 ActiveWindow.ScrollColumn = 17 ActiveWindow.ScrollColumn = 16 ActiveWindow.ScrollColumn = 15 ActiveWindow.ScrollColumn = 14 ActiveWindow.ScrollColumn = 13 ActiveWindow.ScrollColumn = 12 ActiveWindow.ScrollColumn = 11 ActiveWindow.ScrollColumn = 10 ActiveWindow.ScrollColumn = 9 ActiveWindow.ScrollColumn = 8 ActiveWindow.ScrollColumn = 7 ActiveWindow.ScrollColumn = 6 ActiveWindow.ScrollColumn = 5 ActiveWindow.ScrollColumn = 4 ActiveWindow.ScrollColumn = 3 ActiveWindow.ScrollColumn = 2 ActiveWindow.ScrollColumn = 1 ActiveWindow.LargeScroll Down:=-1 ActiveWindow.ScrollRow = 300 ActiveWindow.ScrollRow = 292 ActiveWindow.ScrollRow = 245 ActiveWindow.ScrollRow = 167 ActiveWindow.ScrollRow = 128 ActiveWindow.ScrollRow = 88 ActiveWindow.ScrollRow = 73 ActiveWindow.ScrollRow = 57 ActiveWindow.ScrollRow = 49 ActiveWindow.ScrollRow = 33 ActiveWindow.ScrollRow = 18 ActiveWindow.ScrollRow = 2 Range("A1").Select Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select ActiveWindow.ScrollColumn = 83 ActiveWindow.ScrollColumn = 82 ActiveWindow.ScrollColumn = 81 ActiveWindow.ScrollColumn = 79 ActiveWindow.ScrollColumn = 77 ActiveWindow.ScrollColumn = 75 ActiveWindow.ScrollColumn = 73 ActiveWindow.ScrollColumn = 71 ActiveWindow.ScrollColumn = 67 ActiveWindow.ScrollColumn = 64 ActiveWindow.ScrollColumn = 62 ActiveWindow.ScrollColumn = 58 ActiveWindow.ScrollColumn = 56 ActiveWindow.ScrollColumn = 53 ActiveWindow.ScrollColumn = 51 ActiveWindow.ScrollColumn = 48 ActiveWindow.ScrollColumn = 46 ActiveWindow.ScrollColumn = 45 ActiveWindow.ScrollColumn = 42 ActiveWindow.ScrollColumn = 41 ActiveWindow.ScrollColumn = 39 ActiveWindow.ScrollColumn = 38 ActiveWindow.ScrollColumn = 37 ActiveWindow.ScrollColumn = 36 ActiveWindow.ScrollColumn = 35 ActiveWindow.ScrollColumn = 34 ActiveWindow.ScrollColumn = 33 ActiveWindow.ScrollColumn = 32 ActiveWindow.ScrollColumn = 31 ActiveWindow.ScrollColumn = 30 ActiveWindow.ScrollColumn = 29 ActiveWindow.ScrollColumn = 28 ActiveWindow.ScrollColumn = 27 ActiveWindow.ScrollColumn = 26 ActiveWindow.ScrollColumn = 25 ActiveWindow.ScrollColumn = 24 ActiveWindow.ScrollColumn = 23 ActiveWindow.ScrollColumn = 22 ActiveWindow.ScrollColumn = 21 ActiveWindow.ScrollColumn = 19 ActiveWindow.ScrollColumn = 18 ActiveWindow.ScrollColumn = 17 ActiveWindow.ScrollColumn = 16 ActiveWindow.ScrollColumn = 15 ActiveWindow.ScrollColumn = 14 ActiveWindow.ScrollColumn = 12 ActiveWindow.ScrollColumn = 11 ActiveWindow.ScrollColumn = 10 ActiveWindow.ScrollColumn = 9 ActiveWindow.ScrollColumn = 8 ActiveWindow.ScrollColumn = 7 ActiveWindow.ScrollColumn = 6 ActiveWindow.ScrollColumn = 5 ActiveWindow.ScrollColumn = 4 ActiveWindow.ScrollColumn = 3 ActiveWindow.ScrollColumn = 2 ActiveWindow.ScrollColumn = 1 ActiveWindow.ScrollRow = 3730 ActiveWindow.ScrollRow = 3722 ActiveWindow.ScrollRow = 3667 ActiveWindow.ScrollRow = 3620 ActiveWindow.ScrollRow = 3534 ActiveWindow.ScrollRow = 3471 ActiveWindow.ScrollRow = 3369 ActiveWindow.ScrollRow = 3298 ActiveWindow.ScrollRow = 3196 ActiveWindow.ScrollRow = 3094 ActiveWindow.ScrollRow = 2992 ActiveWindow.ScrollRow = 2906 ActiveWindow.ScrollRow = 2812 ActiveWindow.ScrollRow = 2718 ActiveWindow.ScrollRow = 2600 ActiveWindow.ScrollRow = 2514 ActiveWindow.ScrollRow = 2396 ActiveWindow.ScrollRow = 2262 ActiveWindow.ScrollRow = 2137 ActiveWindow.ScrollRow = 2058 ActiveWindow.ScrollRow = 1948 ActiveWindow.ScrollRow = 1815 ActiveWindow.ScrollRow = 1713 ActiveWindow.ScrollRow = 1635 ActiveWindow.ScrollRow = 1580 ActiveWindow.ScrollRow = 1517 ActiveWindow.ScrollRow = 1454 ActiveWindow.ScrollRow = 1399 ActiveWindow.ScrollRow = 1360 ActiveWindow.ScrollRow = 1313 ActiveWindow.ScrollRow = 1273 ActiveWindow.ScrollRow = 1242 ActiveWindow.ScrollRow = 1219 ActiveWindow.ScrollRow = 1179 ActiveWindow.ScrollRow = 1140 ActiveWindow.ScrollRow = 1109 ActiveWindow.ScrollRow = 1077 ActiveWindow.ScrollRow = 1038 ActiveWindow.ScrollRow = 999 ActiveWindow.ScrollRow = 960 ActiveWindow.ScrollRow = 873 ActiveWindow.ScrollRow = 826 ActiveWindow.ScrollRow = 787 ActiveWindow.ScrollRow = 748 ActiveWindow.ScrollRow = 701 ActiveWindow.ScrollRow = 653 ActiveWindow.ScrollRow = 606 ActiveWindow.ScrollRow = 575 ActiveWindow.ScrollRow = 544 ActiveWindow.ScrollRow = 512 ActiveWindow.ScrollRow = 489 ActiveWindow.ScrollRow = 465 ActiveWindow.ScrollRow = 449 ActiveWindow.ScrollRow = 426 ActiveWindow.ScrollRow = 418 ActiveWindow.ScrollRow = 402 ActiveWindow.ScrollRow = 387 ActiveWindow.ScrollRow = 379 ActiveWindow.ScrollRow = 371 ActiveWindow.ScrollRow = 363 ActiveWindow.ScrollRow = 355 ActiveWindow.ScrollRow = 332 ActiveWindow.ScrollRow = 261 ActiveWindow.ScrollRow = 167 ActiveWindow.ScrollRow = 104 ActiveWindow.ScrollRow = 26 ActiveWindow.ScrollRow = 2 Range("A1").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Application.CutCopyMode = False Selection.Copy Windows("br_kpis_jan_2015_salvo_automaticamente.xlsx").Activate ActiveWindow.SmallScroll Down:=-9 Windows("formatea file de nemag e mastersoft_2014_06.xlsm").Activate ActiveWindow.ScrollColumn = 83 ActiveWindow.ScrollColumn = 82 ActiveWindow.ScrollColumn = 80 ActiveWindow.ScrollColumn = 79 ActiveWindow.ScrollColumn = 76 ActiveWindow.ScrollColumn = 72 ActiveWindow.ScrollColumn = 69 ActiveWindow.ScrollColumn = 64 ActiveWindow.ScrollColumn = 59 ActiveWindow.ScrollColumn = 54 ActiveWindow.ScrollColumn = 42 ActiveWindow.ScrollColumn = 25 ActiveWindow.ScrollColumn = 17 ActiveWindow.ScrollColumn = 14 ActiveWindow.ScrollColumn = 12 ActiveWindow.ScrollColumn = 11 ActiveWindow.ScrollColumn = 10 ActiveWindow.ScrollColumn = 9 ActiveWindow.ScrollColumn = 8 ActiveWindow.ScrollColumn = 7 ActiveWindow.ScrollColumn = 6 ActiveWindow.ScrollColumn = 4 ActiveWindow.ScrollColumn = 1 ActiveWindow.ScrollRow = 324 ActiveWindow.ScrollRow = 316 ActiveWindow.ScrollRow = 269 ActiveWindow.ScrollRow = 135 ActiveWindow.ScrollRow = 26 ActiveWindow.ScrollRow = 2 Columns("A:Y").Select Application.CutCopyMode = False Selection.Copy Windows("br_kpis_jan_2015_salvo_automaticamente.xlsx").Activate Range("A1").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Range("AI1").Select Windows("formatea file de nemag e mastersoft_2014_06.xlsm").Activate Columns("AA:AO").Select Application.CutCopyMode = False Selection.Copy Windows("br_kpis_jan_2015_salvo_automaticamente.xlsx").Activate Range("AA1").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Range("AQ1").Select Windows("formatea file de nemag e mastersoft_2014_06.xlsm").Activate Columns("AQ:BC").Select Application.CutCopyMode = False Selection.Copy Windows("br_kpis_jan_2015_salvo_automaticamente.xlsx").Activate Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False ActiveWindow.ScrollColumn = 38 ActiveWindow.ScrollColumn = 39 ActiveWindow.ScrollColumn = 40 ActiveWindow.ScrollColumn = 41 ActiveWindow.ScrollColumn = 42 ActiveWindow.ScrollColumn = 43 ActiveWindow.ScrollColumn = 44 ActiveWindow.ScrollColumn = 45 ActiveWindow.ScrollColumn = 46 ActiveWindow.ScrollColumn = 47 ActiveWindow.ScrollColumn = 48 ActiveWindow.ScrollColumn = 49 ActiveWindow.ScrollColumn = 50 ActiveWindow.ScrollColumn = 51 ActiveWindow.ScrollColumn = 52 Windows("formatea file de nemag e mastersoft_2014_06.xlsm").Activate Columns("BE:CY").Select Application.CutCopyMode = False Selection.Copy Windows("br_kpis_jan_2015_salvo_automaticamente.xlsx").Activate Range("BE1").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub " Agradeço desde já.
  13. Tenho um conjunto de check boxes num formulário e pretendo que, ao clicar num botão, seja aberto um segundo formulário que possa aceder à informação das caixas que foram marcadas na janela anterior. Qual seria a melhor forma de conseguir tal comportamento? Tentei fazer através da criação de um array onde colocasse os nomes das check boxes que foram activadas mas acontece que no VBA não se consegue criar um array dinâmico tão facilmente como pensava. Segue o código que tenho: Dim ctrl As Access.Control Dim i As Integer Dim arrTabs(i) As String Private Sub btnAdicionar_Click() For Each ctrl In Controls If TypeName(ctrl) = "CheckBox" And ctrl.Value = True Then ReDim Preserve arrTabs(i + 1) arrTabs(i + 1) = ctrl.Name End If Debug.Print arrTabs Next ctrl 'DoCmd.OpenForm "frmNovo", acFormPivotTable, , , , , arrTabs End Sub Li que a instrução ReDim Preserve não é a melhor opção do ponto de vista do desempenho mas foi o caminho que me pareceu mais directo para obter o que pretendia. No entanto não tive sucesso.
  14. Caros, Boa tarde a todos! Preciso de um grande help. Estou montando uma macro que atualize alguns relatórios automaticamente todo dia. Existe um relatório que sua base de dados é muito grande e está alocada em uma tabela do Access. Preciso saber se tem como criar um código que faça o Access importar o arquivo txt com os dados para a tabela e depois rodar uma consulta que modifica esses dados automaticamente. Grato pela atenção e ajuda!
  15. Galera estou com problemas nesse código: Set cn = New ADODB.Connection cn.ConnectionString = "DRIVER={MySQL ODBC 5.1 Driver}; SERVER=localhost;port=3306;DATABASE=lik;UID=root;PASSWORD=junior95;" cn.CursorLocation = adUseClient cn.Open Set rs = New ADODB.Recordset sql = "SELECT cliente,statu,demepro,responsavel,solicitante,controle,previsao,observacoes from demandas where refid = " & refid & ";" txtcliente = "cliente" txttipodemanda = "statu" txtdemanda = "demepro" txtresponsavel = "responsavel" txtsolicitante = "solicitante" txtcontrole = "controle" txtprevisao = "previsao" txtobs = "observacoes" Ele da erro o seguinte erro: Erro de tempo de execução '-2147467259 (80004005)'; [Microsoft][ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado. já estou com o ODBC Connector 5.1 instalado mas não vai de forma alguma alguém ai poderia me ajudar? já desinstalei e instalei novamente o banco, o connector mas não vai. Abs.
  16. Ola pessoal, preciso da vossa ajuda por favor. Preciso de evoluir o seguinte codigo para fazer a concatenação de dados de certa forma. Tenho uma pasta com fotos de produtos, (varias fotos para cada produto) e pretendo que o excel faça uma busca pelo nome das fotos e escreva os nomes das fotos referentes a cada produto numa celula e separados por virgula. O nome das fotos é o mesmo que a referencia do produto e caso o produto tenha mais de uma foto o nome é diferenciado por uma letra do alfabeto no fim do nome antes do ponto e da extenção. Outra questão é que para cada produto as fotos podem ter diferentes extensões ou seja, pode ter JPG e/ou PNG e/ou JPEG. No total podem existir 1000, 2000, 3000 fotos ou mais na pasta e para cada produto podem existir 1 ou 2 ou 3 ou 15, etc. fotos Vamos aos exemplos: FOTOS do produto ac2345 ac2345.png ac2345a.jpg ac2345b.png FOTOS do produto 106 106.jpeg 106a.jpg 106b.jpg 106c.jpg 106d.jpg FOTOS do produto 023198AA 023198AA.png 023198AAa.png 023198AAb.jpg ETC. O codigo que apresento faz a busca de todos os ficheiros existentes em uma pasta e escreve os nomes dos ficheiros numa planilha mas escreve cada nome numa celula em separado e todos na coluna A. Exemplo: ac2345.png ac2345a.jpg ac2345b.png 106.jpeg 106a.jpg 106b.jpg 106c.jpg 106d.jpg 023198AA.png 023198AAa.png 023198AAb.jpg ETC. O que eu preciso é que na mesma celula fiquem os nomes referentes a cada produto separados por virgula. Exemplo: Celula A1 = ac2345.png, ac2345a.jpg, ac2345b.png Celula A2 = 106.jpeg, 106a.jpg, 106b.jpg, 106c.jpg, 106d.jpg Celula A3 = 023198AA.png, 023198AAa.png, 023198AAb.jpg Eis o codigo que tenho: ------------------------------------------------------------------------------------------------------------------------------------------------ Sub GetJPGandPNGandJPEG() Dim X As Long, LastDot As Long, Path As String, FileName As String, F(0 To 9) As String Path = "C:\teste\" FileName = Dir(Path & "*.*p*g") Do While Len(FileName) LastDot = InStrRev(FileName, ".") If LCase(Mid(FileName, LastDot)) = ".jpg" Or LCase(Mid(FileName, LastDot)) = ".png" Or LCase(Mid(FileName, LastDot)) = ".jpeg" Then If Left(FileName, 1) Like "#" Then F(Left(FileName, 1)) = F(Left(FileName, 1)) & ", " & FileName End If End If FileName = Dir Loop For X = 0 To 9 Cells(X + 1, "A").Value = Mid(F(X), 3) Next Range("A1:A10").SpecialCells(xlBlanks).Delete End Sub -------------------------------------------------------------------------------------------------------------------------------------------------------- Será que alguém me pode ajudar? Agradeço desde já a todos. Obrigado
  17. Olá. Gostaria de saber como posso chamar uma macro ao atualizar uma célula a partir de outra célula. Já tentei o evento change, mas ele não reconhece a mudança do valor da célula, se não for alterada manualmente. Tentei o evento calculate, mas está gerando um loop. Não sei o porque. Que código eu poderia utilizar para executar uma macro quando uma célula for atualizada por uma função? Obrigado.
  18. Boa tarde, Alguém poderia me ajudar, estou tentando criar uma rotina vba para calcular no autocad a distância entre dois pontos: distancia = ThisDrawing.Utility.GetDistance e inserir um texto com o valor da distância no meio dos dois pontos selecionados. Set Txt = ThisDrawing.ModelSpace.AddText(distancia, ponto, alturatxt) porem não tenho a menor noção de como capturar as coordenadas para inserir o texto. Alguém sabe como pegar a coordenada e calcular o ponto de inserção do texto? grato.
  19. Olá a todos, Sou novo no fórum e também novo na utilização de VB, pelo que estou com problemas na criação de um procedimento. O que tenho é o seguinte: Um formulário (frmMenu) que tem hiperligações para os diversos formulários da aplicação. Essa parte é pacífica e funciona correctamente. Acontece que tenho a necessidade de copiar uma tabela que está a ser usada em "produção" devido ao facto de estar ainda numa fase de teste e não querer correr riscos com os dados originais. O que pretendo é que quando o referido frmMenu for aberto, executar duas instruções SQL (neste momento em forma de consulta) para apagar o conteúdo de uma tabela temporária (tBuffer) e voltar a preenchê-la com os dados actuais da tabela original: Consulta 1 (LimparTBuffer): DELETE * FROM tBuffer; Carregar 'buffer' com dados actualizados da tabela em "produção" - Consulta (copiarTOrigem): INSERT INTO tBuffer SELECT * FROM tOrigem; O código VBA que tenho actualmente é o seguinte: Private Sub Form_Open(Cancel As Integer) 'Disabilitar temporariamente os avisos e caixas de mensagem Application.ScreenUpdating = False Application.DisplayAlerts = False DoCmd.SetWarnings False 'Executar queries CurrentDb.Execute LimparTBuffer CurrentDb.Execute CopiarTOrigem 'Activar novamente os avisos DoCmd.SetWarnings True Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub E produz o seguinte erro quando é executada: Não consigo perceber onde está o problema. Já agora, existirá forma mais optimizada de atingir o mesmo objectivo no que ao código VBA diz respeito? Obrigado desde já.
  20. Bom dia. Estou desenvolvendo um trabalho na faculdade e me deparei com uma dúvida muito grande. Gostaria de saber como faço pra linkar um botão de comando (comandbutton) para uma página dentro de uma multipage. Aguardo respostas e desde já agradeço.
  21. Olá Pessoal, É o meu primeiro post aqui. Estou com uma dúvida. Temos que pegar alguns emails e coloca-los salvos em uma pasta na rede. A planilha acesse esse diretório e verifica se os e-mail foram colocados lá. Isso ela consegue fazer, mas estou querendo que a Macro identifique o arquivo de email e retorne para minha planilha a data de envio que o e-mail foi realizada. Será que tem como? Agradeço a ajuda!
  22. bom e o seguinte eu tenho de Excel/Vba que eu faço tabelas de futebol (simuladores) e tipo eu queria que eu tivesse uma tabela no meu PC que tivesse ligada ao meu site e as pessoas que Baixaram (Ilustração Abaixo, OBS: Fiz no paint por isso ficou uma porcaria) tipo assim a tabela esta atualizada ate a 10ª Rodada e já esta na 20ª, ai eu atualizo os jogos na tabela do meu PC, ela automaticamente atualiza a que esta no site, e todos que baixaram automaticamente também têm ela atualizada. OBS: Se tiver como explicar o máximo detalhadamente e explicativa seria uma boa, pois não manjo de HTML e só um pouco de VBA.
  23. Solução em biometria facial para desenvolvedor delphi7 ,Vb.Net e Access VBA Khronos Tecnologia - Software/Aplicativo e consultoria em desenvolvimento biométrico Saiba mais em http://geovanny-oliveira16.wix.com/khronostecnologia Skype:Giovanny0113
  24. Olá a todos! Preciso de ajuda a finalizar um trabalho para escola que tenho que entregar segunda feira... Tenho o programa praticamente pronto, mas não consigo acabar porque me falta concluir uma função que é a mais importante: Num dos forms quero que após escolher duas opções em combo, escrever 3 textbox e exportar esse texto para a planilha. Isto é após escolher o item de avaliação e o fornecedor, escrevo nos campos de avaliação e esclarecimentos e depois envio esses textos para uma tabela itemxfornecedor (campos azuis e vermelhos) Pura e simplesmente não estou a conseguir fazer nada... Por favor HELP!!
  25. Boa Tarde Amigos, Estou com uma Macro no VBA que necessito colocar um campo de data automaticamente, Segue abaixo a programação da Macro: Sub Macro1() ' ' Macro1 Macro ' ' Dim MyOlapp As Object, MeuItem As Object Set MyOlapp = CreateObject("Outlook.Application") Set MeuItem = MyOlapp.CreateItem(olMailItem) With MeuItem .Bcc = ("filipe@xxx.com.br) .Subject = "Relatório x (Ref " & Format(Date, "dd/mmm/yy") & (")") .HTMLBody = "<font size=3 color=1F497D face=calibri>Bom Dia<br >" .HTMLBody = .HTMLBody & "<font size=3 color=1F497D face=calibri><br >xxxx DATA:" .HTMLBody = .HTMLBody & "<font size=3 color=1F497D face=calibri><br > <html><body><font size=3 color=red><a href=www.Relatório. DATA.xlsx>www.Relatório DATA.xlsx</a></font></body></html>" .Attachments.Add ActiveWorkbook.FullName .Display End With End Sub Sou iniciante em HTML e VBA, Necessito que o email no final das contas fique mais ou menos assim: Relatório xxx ( DATA DE HOJE) Link: www.relatório/(DATA DE HOJE).xls Procurei em alguns blogs e não achei uma maneira de fazer isso, Se puderem me ajudar agradecerei muito ! Obrigado
×
×
  • Criar Novo...