Ir para conteúdo

Recommended Posts

Galera, boa noite.

Necessito saber como consigo aprender VBA para começar a criar minhas próprias macros, pois atualmente estou sendo submetido a automatizar as planilhas da minha empresa, onde que para isso estou buscando a automatização pelo VBA.

Pensei em comprar os livros do Mr.Excel (VBA para leigos, Macros e VBA 2016...), porém não sei se vale a pena. No momento estou assistindo vídeo aulas no YouTube, mas queria ir além, pois estou com duvidas básicas, principalmente de como montar as estruturas e entender quando utilizar cada variável e seus códigos.

 

Toda ajuda será bem vinda!!!

 

Grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Leo_2019
      Sou novato em access e vba. Estou utilizando uma textbox e gostaria de colar vários nomes na textbox e ao clicar no botão salvar gostaria que fosse inserido todos os valores na tabela, sendo cada nome como um registro, ou seja, incluir em lote ao invés de um por um. Se existir outra forma diferente da textbox também é válido. Tal propósito é devido um sistema de novos colaboradores que tenho que criar. Já criei 80%, mas está faltando essa parte, uma vez que, tentei de várias formas mas não consegui e estou precisando muito dessa ajuda. Tentei inserir a imagem do código que eu fiz, mas não foi possível devido ao tamanho. Desde já agradeço.
    • Por sheepziiin
      Boa tarde colegas !
      Estou quebrando a cabeça com um job para tratamento de logradouros. Segue o raciocínio:  
      Tenho uma lista com todos os endereços do estado de São Paulo, onde os mesmos são extraídos da seguinte forma:
       
      Exemplo:
      AL-AFONSO SCHMIDT/CDM:ED. SOPHIS SANTANA_COM PRUMADA/BLC:A-555-AP - Apartamento: 61 A AL-ANAPURUS/EDI:BOULEVARD/BLC:A-777-AP - Apartamento: 131 AL-ARAPANES/EDI:CDOE,6-5ºANDAR-309-AP - Apartamento: 42 AL-ARAPANES/EDI:COND.ED.MOEMA DUPLEX LIFE-1142-AP - Apartamento: 102 AL-ARAPANES/EDI:COND.ED.MOEMA DUPLEX LIFE-1142-AP - Apartamento: 42 AL-ARAPANES/EDI:PARC BRUMENADI-982-AP - Apartamento: 191 AL-BARROS/EDI:PERVAL-186-AP - Apartamento: 1601 AL-BARROS/EDI:PERVAL-186-BL - Blocos: B AP - Apartamento: 1302 AL-CAETANO,S/CDM:ED. GIARDINO_CDOE_1_ANDAR_11 A 13-165-AP - Apartamento: 63 AL-CAETANO,S/EDI:ESPLENDOR-1234-AP - Apartamento: 71 AL-CAETANO,S/EDI:MAGENTA I_CDOE_1_ANDAR_7 A 10-2575-AP - Apartamento: 94 AL-CALCUTA-195-AP - Apartamento: 02 AL-CAMPESTRE-728-CS - Casa: 1 AL-CASA BRANCA/CDM:BRISTOL-851-CJ - Conjunto: 11 AN - Andar: 01 AL-CASA BRANCA/CDM:SAINT SIMON-667-AP - Apartamento: 11
      Notem que os casos "não tem um padrão" (até tem por tipo de residencia). Utilizei inúmeras postagens aqui do fórum e consegui solucionar os casos para residencias (padrão TIPO_LOG;LOG;COMPL;NUM), no entanto as formulas e soluções aqui indicadas por vocês "param" na primeira sequencia numérica, entretanto para a maioria dos casos, o texto continua com letras, números e caracteres.
       
      Segue o padrão final que preciso chegar.
      Exemplo: AL-AFONSO SCHMIDT/CDM:ED. SOPHIS SANTANA_COM PRUMADA/BLC:A-555-AP - Apartamento: 61 A
      Resultado Tratado: AFONSO SCHMIDT 555
       
      Desde de já muito obrigado pelos retornos que certamente virão.
    • Por Robson Wenzel
      Olá, sou novo no VB
       
      Estou desenvolvendo um programa de atendimento médico onde tem vários textboxs e um deles é de Valor (R$).
       
      O meu problema é o seguinte...
      No meu banco de dados o campo valor é do tipo moeda e o banco é em access
      No meu programa no dataset configurei ele para double e por código consegui colocar automaticamente ponto e virgula.
      Até ai acho que tudo bem...
      Só que quando eu clico para salvar ele automaticamente esquece do ponto e virgula e salva no datagridview o valor sem ponto e virgula, e dai quando eu seleciono o registro ele esquece dos centavos
       
      Ex.:
      Eu digito na text box: R$ 1.250,00
      E quando eu salvo aparece na datagridview: 1250
      Quando seleciono o mesmo registro ele fica assim na textbox: R$ 12,50
      Só se os centavos não forem zerados ele salva mais se forem 00 ele não salva
       
      Por favor! me ajudem.
       
      Segue o código da formula para colocar os ponto e virgula para vocês darem uma olhada e ver se tem erros...
       
      --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      Public Shared Sub Moeda(ByRef txt As TextBox)         Dim n As String = String.Empty         Dim v As Double = 0         Try             n = txt.Text.Replace(",", "").Replace(".", "")             If n.Equals("") Then n = ""             n = n.PadLeft(3, "0")             If n.Length > 3 And n.Substring(0, 1) = "0" Then n = n.Substring(1, n.Length - 1)             v = Convert.ToString(n) / 100             txt.Text = String.Format("{0:C2}", v)             txt.SelectionStart = txt.Text.Length         Catch ex As Exception         End Try     End Sub     Private Sub valortxt_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles valortxt.KeyPress         Select Case (valortxt.TextLength)             Case 4                 valortxt.SelectionStart = 5         End Select     End Sub     Private Sub valortxt_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles valortxt.TextChanged         Atendimentos.Moeda(valortxt)     End Sub ------------------------------------------------------------------------------------------------------------------------------------------------------------
    • Por capcsar
      Bom dia pessoal. 

      Não sei muito sobre VBA, por isso estou tendo problemas com alguns códigos.

      Preciso copiar a cada linha da PLAN 1 para a PLAN 2, se repetindo conforme a quantidade descrita do lado de cada linha.

      Alguém sabe e pode me ajudar nisso.

      Desde já agradeço.

      Abraços
       
       


    • Por raffrenan
      E ae galera, seguinte, estou desenvolvendo um sistema em vba no excel para a empresa que trabalho, porém estou utilizando um sistema de consulta com listview, onde ele busca do banco de dados, porém preciso que esses dados sejam mostrados em uma textbox específica, porém não estou conseguindo, segue o código:
      Private Sub Btn_Consulta_Click()     Dim strSql As String          ID = Me.TxtConsulta          Set rs = New ADODB.Recordset          strSql = "SELECT ID_Monitor AS [Código], Nome AS [Nome do Operador],"     strSql = strSql & " * FROM Monitores WHERE ID_Monitor LIKE '" & ID & "'"          rs.Open strSql, MiConexao          On Error Resume Next          Me.Lista.ListItems.Clear          With Me.Lista              .View = lvwReport         .Gridlines = True         .FullRowSelect = True         .ColumnHeaders.Clear              For i = 0 To rs.Fields.Count - 1              .ColumnHeaders.Add i + 1, , VBA.UCase(rs(i).Name)              Next i          End With          While Not rs.EOF          Set Lrst = Me.Lista.ListItems.Add(Text:=rs(0))              Lrst.SubItems(1) = rs(1)         Lrst.SubItems(2) = rs(2)         Lrst.SubItems(3) = rs(3)         Lrst.SubItems(4) = rs(4)         Lrst.SubItems(5) = rs(5)         Lrst.SubItems(6) = rs(6)              rs.MoveNext          Wend          Me.TxtConsulta = ""     Me.TxtConsulta.SetFocus      End Sub Private Sub Lista_ItemClick(ByVal Item As MSComctlLib.ListItem) Dim Linha As Variant       Linha = Me.Lista.List.Index    Me.TxtNomeView = Me.Lista.List(Linha, 3)   End Sub Private Sub UserForm_Initialize() Call Conecta End Sub  
      Lembrando que ele consulta normalmente e mostra na listview, porém quando eu clico em uma opção da lista ele retorna erro.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.