Notifications
Clear all

simplificar com loop

50 Posts
4 Usuários
0 Reactions
5,291 Visualizações
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

Boa Tarde

Teria como simplificar a macro abaixo pois vou tera mais linhas iguais.

Teria como colocar um loop ai ?

mudara: Pro1.Value , Label_Pro1, Label_Pro1A ....

Private Sub Pro1_Enter()

Sheets("Estoque").Activate

Dim intervalo As Range
Dim codigo As Integer
Set intervalo = Plan19.Range("B6:W605")
            
codigo = Pro1.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro1.Caption = Pesquisa
Label_Pro1A.Caption = Pesquisa1

codigo = Pro2.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro2.Caption = Pesquisa
Label_Pro2A.Caption = Pesquisa1

codigo = Pro3.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro3.Caption = Pesquisa
Label_Pro3A.Caption = Pesquisa1

codigo = Pro4.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro4.Caption = Pesquisa
Label_Pro4A.Caption = Pesquisa1

codigo = Pro5.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro5.Caption = Pesquisa
Label_Pro5A.Caption = Pesquisa1

codigo = Pro6.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro6.Caption = Pesquisa
Label_Pro6A.Caption = Pesquisa1

codigo = Pro7.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro7.Caption = Pesquisa
Label_Pro7A.Caption = Pesquisa1

codigo = Pro8.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro8.Caption = Pesquisa
Label_Pro8A.Caption = Pesquisa1

codigo = Pro8.Value
  Pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 4, False)
  Pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 6, False)
Label_Pro8.Caption = Pesquisa
Label_Pro8A.Caption = Pesquisa1






End Sub
 
Postado : 27/01/2017 11:21 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Faz parte...
Segue um exemplo mais prático.

Qualquer coisa da o grito.
Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 7:18 am
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

falta agora resolver como usar varios caixas usando as mesmas telas que informei

sabe ?

 
Postado : 31/01/2017 10:11 am
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

isso aqui Bernardo

Outra coisa, vou criar agora os caixas 2, 3, 4 e 5, e serao identicos ao caixa 1.Porem quero que os formularios
XPagamento2, Troco , empresa1 e sabores... sejam universais e podendo ser chamadas independentemente de qual caixa esteja, pois serao temporarios.

Para que isso possa acontecer preciso criar variaveis tipo :

Caixa1.XPagamento.TextBox1.value = .....

para

Dim Ativo As String
Ativo=XPagamento.TextBox1.Value

Assim Ativo poderia ser usado para chamar qualquer caixa, e assim usar mais de um caixa quando tiver mais de 1 cliente no atendimento. Tipo comander usado em restaurante. Usarei os Caixas 1, 2, 3, 4 e 5 como SHOWMODAL = FALSE

 
Postado : 31/01/2017 10:23 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Qual a necessidade desses caixas?

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 10:32 am
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

acontece de aqui na loja estar atendendo um cliente, e iniciar a venda no caixa, dai chega outro cliente e o que estava esquece de algo e volta a escolher e o que chegou esta pronto a pagar, mas nao quero deixar o caixa 1 aberto pra nao ter que digitar tudo de novo, dai abro o caixa 2 ou 3 e executo a venda enquanto o caixa 1 fica em stand by, como o form Xpagamento, troco etc sao temporarios servira entao a ambois, ficou duvida ?

Andre

 
Postado : 31/01/2017 10:39 am
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

resolvi isso criando uma tela de xpagamento e troco e empresa1 a cada caixa, mas queiria usar uma a todos os caixas tem como ?
vc tem ai a tela teria como fazer essa variavel testar e me mandar ?
grato Bernardo

Andre

 
Postado : 31/01/2017 10:40 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Tem como até fazer de uma outra maneira... Que particularmente acho melhor...
Mas esse formulário é muito grande... (meu monitor aqui é 1280 x 1024 pixels)
Fora que, como não conheço muito bem o formulário, tenho receio em mexer em algo...
Fazer essas "cópias" não fica muito bom não...

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 12:00 pm
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

Tem como até fazer de uma outra maneira... Que particularmente acho melhor...
Mas esse formulário é muito grande... (meu monitor aqui é 1280 x 1024 pixels)
Fora que, como não conheço muito bem o formulário, tenho receio em mexer em algo...
Fazer essas "cópias" não fica muito bom não...

faz o seguinte, passa sua ideia e como fazer a variavel pra nao ter uma tela de xpagamento, troco e empresa1 pra cada caixa e dai faco aqui, estou familiarizado aqui com minha bagunca, e vou se nao conseguir eu grito,

pode ser ?

 
Postado : 31/01/2017 12:04 pm
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

veja esse topico, tem imagens la e vai entender melhor.

viewtopic.php?f=23&t=23177

 
Postado : 31/01/2017 12:06 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Estou tentando fazer algumas coisas e não consigo.
Não dá para testar tudo... É muito grande...
Fora os controles.... Textbox, inputbox.. ... são poucos que estão nomeados....

Qual a última versão?
Ela funciona parcialmente?
Como está?

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 12:18 pm
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

nao consigo mais enviar , adiciono a plan mas nao anexa.

 
Postado : 31/01/2017 12:33 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Envia no meu email.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 12:35 pm
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

mandei ve ai se chegou

 
Postado : 31/01/2017 12:44 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Recebi...
É muuuuito erro de tipos incompatíveis, subscrito fora de intervalo, Muuuuita informação.... Muuuuuuuuuuuito código....
Estou literalmente perdido.... Não consigo realizar nada...
=

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 1:10 pm
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

rsrsrsrsrsrsrsrs

eu me entendo aqui certinho ,

por isso insisito em que me diga como fazer apenas a variavel

Leu o outro topico que passei, e so isso criar uma variavel, consigo criar a variavel se fosse pra usar como planilha, mas nao consigo fazer o mesmo usando formularuio, se me resolver isso acabou os problemas aqui, se nao vou ter que fazer uma tela pra cada caixa mesmo e o jeito.

 
Postado : 31/01/2017 1:15 pm
Página 3 / 4