MUDAR SELECAO DE CELULA PARA TEXTBOX USANDO TAB
Tenho este código abaixo que tem a função de mudar de um textbox para outro usando a tecla [Ô]TAB[Ô], coforme ajuda recebida por mim neste fórum.
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyTab Or KeyCode = 13 Then
TextBox2.Activate
End If
End Sub
A minha dúvida é o seguinte: Existe alguma forma de teclar [Ô]TAB[Ô] quando eu estiver em uma célula e o cursor ir para um textbox e do textbox para uma célula?
Obrigado
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyTab Or KeyCode = 13 Then
TextBox2.Activate
End If
End Sub
A minha dúvida é o seguinte: Existe alguma forma de teclar [Ô]TAB[Ô] quando eu estiver em uma célula e o cursor ir para um textbox e do textbox para uma célula?
Obrigado
Qual Grid vc usa ?
FlexGrid ?
DbGrid ?
FlexGrid ?
DbGrid ?
Desculpa a ignorância Leandro mas não entendi. O meu problema é em uma planilha. Espero ter ajudado.
Existe alguma forma de realizar este processo?
Obrigado!
Obrigado!
Você quer ir do Textbox para uma célula especÃfica, digamos [Ô]B9[Ô], [Ô]A26[Ô] ou [Ô]E14[Ô]? Ou ao pressionar TAB você quer ir do Textbox para uma célula qualquer? Para uma célula especÃfica fica melhor de implementar.
Alexandre
Alexandre
ENGALEXANDRE
Ok, é para uma célula expecÃfica mesmo. E queria fazer o inverso também da célula especÃfica para o textbox. Só que eu estou pensando, as teclas Enter ou Tab já que a função de fazer tabulação e quebra de texto dentro do meu textbox. Tem como adaptar outro atalho? Tipo Shift+Tab e a seleção ir para a célula especÃfica?
Obrigado!!!
Ok, é para uma célula expecÃfica mesmo. E queria fazer o inverso também da célula especÃfica para o textbox. Só que eu estou pensando, as teclas Enter ou Tab já que a função de fazer tabulação e quebra de texto dentro do meu textbox. Tem como adaptar outro atalho? Tipo Shift+Tab e a seleção ir para a célula especÃfica?
Obrigado!!!
Antes de mais nada, só uma pergunta, como você inseriu uma Textbox direto na planilha? Para mim essa opção aparece desabilitada no excel.
Habilitando a barra de ferramentas Visual Basic.
Olá PABLOMOREIRAGV
O problema não está resolvido, apenas parte dele. Para ir do Textbox para uma célula especÃfica faça o seguinte:
- Abra o editor de VB do Excel;
- Cole o código na planilha onde você inseriu a Textbox
código:
Private Sub TextBox1_LostFocus()
Range([Ô]A12[Ô]).Activate
End Sub
- O código acima faz com que a célula A12 seja ativada após você escrever no Textbox1 e pressionar a tecla ESC. Não funciona com Enter ou TAB, somente ESC.
- Quanto a outra parte do problema eu ainda estou vendo.
Alexandre
O problema não está resolvido, apenas parte dele. Para ir do Textbox para uma célula especÃfica faça o seguinte:
- Abra o editor de VB do Excel;
- Cole o código na planilha onde você inseriu a Textbox
código:
Private Sub TextBox1_LostFocus()
Range([Ô]A12[Ô]).Activate
End Sub
- O código acima faz com que a célula A12 seja ativada após você escrever no Textbox1 e pressionar a tecla ESC. Não funciona com Enter ou TAB, somente ESC.
- Quanto a outra parte do problema eu ainda estou vendo.
Alexandre
ENGALEXANDRE,
Cara muito bom até agora. Bom mesmo. Funciona legal, só falta a outra parte, vou ficar no aguardo..rs..rs...
Um Abraço!
Cara muito bom até agora. Bom mesmo. Funciona legal, só falta a outra parte, vou ficar no aguardo..rs..rs...
Um Abraço!
Olá PABLOMOREIRAGV
Se eu entendi bem o que você quer, encontrei uma solução. Talvez não seja a melhor, mas acredito que funcione.
Funciona assim:
- Como você quer sair de uma célula especÃfica e ir para um Textbox, esse código [Ô]joga[Ô] o foco da célula especÃfica ativa para o Textbox desejado.
- Suponho que nessa célula especÃfica você vai digitar ou deletar algum dado.
=> Se for digitar algo, após digitar e teclar Enter (ou TAB) o Textbox fica ativo e você poderá digitar nele;
=> Se for deletar algo, basta apertar DEL e o conteúdo da célula será apagado e o Textbox recebe o foco para você digitar nele. Se não quiser digitar nada no Textbox, basta teclar ESC que a célula especÃfica é ativada.
-Digamos que você chegou na célula especÃfica e não quer nem digitar nem deletar algo. Bem, nesse caso você poderá fazer o seguinte: Pressione F2 e depois Enter OU F2 e depois TAB. Nesse caso o Textbox será ativado para digitação.
- Criei um novo Textbox na planilha chamado Textbox2.
- A [Ô]minha[Ô] célula especÃfica, como pode ver na imagem, é a [Ô]D3[Ô].
O código é:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range([Ô]d3[Ô]).Activate Then
TextBox2.Activate
End If
End Sub
Alexandre
Se eu entendi bem o que você quer, encontrei uma solução. Talvez não seja a melhor, mas acredito que funcione.
Funciona assim:
- Como você quer sair de uma célula especÃfica e ir para um Textbox, esse código [Ô]joga[Ô] o foco da célula especÃfica ativa para o Textbox desejado.
- Suponho que nessa célula especÃfica você vai digitar ou deletar algum dado.
=> Se for digitar algo, após digitar e teclar Enter (ou TAB) o Textbox fica ativo e você poderá digitar nele;
=> Se for deletar algo, basta apertar DEL e o conteúdo da célula será apagado e o Textbox recebe o foco para você digitar nele. Se não quiser digitar nada no Textbox, basta teclar ESC que a célula especÃfica é ativada.
-Digamos que você chegou na célula especÃfica e não quer nem digitar nem deletar algo. Bem, nesse caso você poderá fazer o seguinte: Pressione F2 e depois Enter OU F2 e depois TAB. Nesse caso o Textbox será ativado para digitação.
- Criei um novo Textbox na planilha chamado Textbox2.
- A [Ô]minha[Ô] célula especÃfica, como pode ver na imagem, é a [Ô]D3[Ô].
O código é:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range([Ô]d3[Ô]).Activate Then
TextBox2.Activate
End If
End Sub
Alexandre
Tópico encerrado , respostas não são mais permitidas