Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
Por ThiagoJose10
#43174
Bom dia Pessoal,

Criei um formulario para fazer a leitura de códigos de barras e inserir os valores na planilha, porem ele esta meio lento e gostaria de saber se existe a possibilidade de deixa-lo mais agil no momento de inserir na planilha.

Estou com a seguinte lentidão em meu VBA, o formulário faz a leitura normal, porem no momento que o formulario vai inserir o valor na planilha ele fica lento.

Código: Selecionar todos
Private Sub cmbsair_Click()
Unload Me
ActiveWorkbook.Save
End Sub


Private Sub cmbsep_Change()
Me.txtpedido.SetFocus
End Sub
Private Sub txtpedido_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then ' Se a tecla enter

Dim ultimalinha, l, contador As Integer
Dim sep As String

contador = 0
ultimalinha = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
     
     If cmbsep.Text = "" Then
     
     MsgBox "Pedido sem separador!!!", vbCritical, "Informe um separador!!!"
    
        Else
            
            sep = Range("c" & ultimalinha - 1).Value
            l = ultimalinha
            Do While sep = cmbsep
            l = l - 1
            contador = contador + 1
            sep = Range("c" & l).Value
            Loop
            
            If contador < 1 Then
            contador = contador + 1
            Else
            contador = contador
            End If
            Range("A" & ultimalinha) = Date
            Range("B" & ultimalinha) = txtpedido.Text
            Range("C" & ultimalinha) = cmbsep.Text[/b]
            Me.lblped.Caption = cmbsep.Text & ": " & contador & " Pedidos."
            KeyCode = "0"
            Me.txtpedido = ""
            Planilha1.Range("A" & ultimalinha).Select
      End If
End If
       If txtpedido.Value = "" Then
       Me.txtpedido.SetFocus
       End If
       
End Sub


Private Sub UserForm_Initialize()


cmbsep.AddItem "Anderson"
cmbsep.AddItem "Paulo"
cmbsep.AddItem "Marcelo"
cmbsep.AddItem "Armazenagem"
cmbsep.AddItem "Arthur"
cmbsep.AddItem "Alex"
cmbsep.AddItem "Carlos"
cmbsep.AddItem "David"
cmbsep.AddItem "Gerson"
cmbsep.AddItem "Gidalberto"
cmbsep.AddItem "Gleison"
cmbsep.AddItem "Guilherme"
cmbsep.AddItem "Henrique"
cmbsep.AddItem "Marcos"
cmbsep.AddItem "Pendente"
cmbsep.AddItem "Retira"
cmbsep.AddItem "Thiago.H"

End Sub
Por babdallas
#43200
Para melhorar o código precisamos saber o que você precisa que o código faça? Tente detalhar qual a lógica envolvida e o resultado esperado.
Por ThiagoJose10
#43349
Bom dia,

Primeiro eu clico no botão "Novos Pedidos", em seguida seleciono quem é o separador, depois disso vou só passando o código de barras via leitor de pedido á pedido e o código faz a leitura e insere na planilha, porem a lentidão esta ocorrendo no momento de inserir na planilha.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord