- Este tópico contém 4 respostas, 2 utilizadores e foi actualizado pela última vez há 10 anos, 8 meses por Anónimo.
-
AutorArtigos
-
-
16 de Agosto de 2013 às 13:24 #1341AnónimoInactivo
bom dia galerinha!
tenho a seguinte dúvida.
desenvolvi um sisteminha de registro de produto com leitor optico.
dentro do userform, no textbox1, é onde o leitor optico insere o código.
dentro do textbox1 (private sub textbox1_exit(byval cancel as msforms.returnboolean)) coloquei a função de procurar uns dados na plan1 e registrar em plan2.
depois dessa função, eu gostaria que o textbox1 continuasse selecionado para eu fazer uma nova leitura optica, e assim por diante.
então, no final da programação dentro dessa função do textbox1 eu coloquei “me.textbox1.setfocus”, mas não funciono.
depois, no textbox2 (private sub textbox2_enter()), coloquei a função de voltar para textbox1, “me.textbox1.setfocus”, porém, qdo ele volta, ele refaz a função do textbox1 e pula para o textbox3.
entenderam?
preciso muito de uma ajuda. e caso não tenham entendido, eu explico de uma outra forma.
att.
wagner goularte -
18 de Agosto de 2013 às 1:01 #2220jorgerodAdministrador
wagner,
sem ter experimentado e, por isso, sem saber se poderá dar certo, podes tentar no private sub textbox1_exit(byval cancel as msforms.returnboolean:
if test “teste” then ‘ em que test será a tua variável para onde irá o valor da leitura
‘ aqui colocas o teu código relacionado com o que pretendes na planilha
cancel = true
end ifora, como o valor em test será sempre diferente do valor “teste”, faz o que pretendes e volta sempre a efectuar o foco no teu textbox1.
bom, não sei se me fiz explicar… 😉
diz qq coisa, ok?
fica bem.
-
19 de Agosto de 2013 às 11:58 #2223AnónimoInactivo
bom dia jorge!
testei o que me disse e não funciono.
colocarei abaixo a programação desse item inteiro conforme realmente está, verifica se consegue entender e me ajudar novamente. não vou colocar o anexo, pois ele é um arquivo completo cheio de coisas e fica complicado eu anexar. caso isso seja realmente necessário, copio essa parte para um arquivo separado e anexo aqui.
private sub txtcodigoproduto_exit(byval cancel as msforms.returnboolean)
on error goto erroif me.txtcodigoproduto.value “teste” then
if me.txtcodigoproduto.value = “” then
exit sub
end ifif me.cbnome.value = “” then
msgbox “selecionar um nome!!!”, vbinformation, “”
me.txtcodigoproduto.value = “”
exit sub
end ifme.txtcodigoproduto.value = left(me.txtcodigoproduto.value, 5)
dim codigoproduto as string
dim linha as string
codigoproduto = me.txtcodigoproduto.value
linha = sheets(“planilha geral”).range(“a2:a100000”).find(codigoproduto).rowwith worksheets(“planilha geral”).range(“a1”)
me.txtdescricaoproduto.value = .cells(linha, colproduto).value
me.txtunidade.value = .cells(linha, colunidade).value
me.txtquantidade.value = format(1, “00”)
me.txtvalorunid.value = format(.cells(linha, colvalorunid).value, “0.00”)
me.txtvalortotal.value = format(me.txtquantidade.value * me.txtvalorunid.value, “0.00”)
me.txtsugestao.value = format(.cells(linha, colsugestao).value, “0.00”)
end withdim linhaa as string
dim linhanova as string
linhanova = worksheets(format(me.txtcodigo.value, “0”)).usedrange.rows.count + 1
with worksheets(format(me.txtcodigo.value, “0”)).range(“a1”)
linhaa = sheets(format(me.txtcodigo.value, “0”)).range(“a4:a100000”).find(codigoproduto).row
.cells(linhaa, colquantidade).value = .cells(linhaa, colquantidade).value + 1
end withsalvar_1
call atualizar_listview
exit suberro:
with worksheets(format(me.txtcodigo.value, “0”)).range(“a1”)
.cells(linhanova, colcodigo).value = format(me.txtcodigoproduto.value, “00000”)
.cells(linhanova, colproduto).value = me.txtdescricaoproduto.value
.cells(linhanova, colunidade).value = me.txtunidade.value
.cells(linhanova, colquantidade).value = format(me.txtquantidade.value, “00”)
.cells(linhanova, colvalorunid).value = me.txtvalorunid.value
.cells(linhanova, colvalorunid).value = cdbl(cells(linhanova, colvalorunid).value)
.cells(linhanova, colvalortotal).value = me.txtvalortotal.value
.cells(linhanova, colvalortotal).value = cdbl(cells(linhanova, colvalortotal).value)
.cells(linhanova, colsugestao).value = me.txtsugestao.value
.cells(linhanova, colsugestao).value = cdbl(cells(linhanova, colsugestao).value)
end withsalvar_1
call atualizar_listview
cancel = true
end if
end subfico no aguardo.
att.
wagner goularte -
19 de Agosto de 2013 às 12:05 #2224AnónimoInactivo
jorge, deu certo sim.
esqueci de colocar o “cancel” em dois lugares diferentes.
agora está funcionando perfeitamente.
muito obrigado mais uma vez !!!
vc é o cara ….
att.
wagner goularte -
19 de Agosto de 2013 às 20:29 #1342jorgerodAdministrador
wagner,
ainda bem que ficou resolvido!!!
um abraço.
-
-
AutorArtigos
- Tem de iniciar sessão para responder a este tópico.