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 SandroLima
#36423
Bom dia, colegas forumeiros.

Preciso de ajuda para escrever o código de um botão "CONSULTAR" para a situação da planilha em anexo.

Mando a planilha com as necessidades nos comentários do código.

Em resumo gostaria que:
- O código fizesse a consulta no banco de dados a partir do ID, Nome ou CPF do cliente, preenchendo as demais textbox a partir de qualquer uma dessas informações (ID, Nome ou CPF)
- Bloqueasse as demais caixas de texto ao final da consulta, liberando somente ID, Nome e CPF para nova pesquisa
- Habilitasse o botão "ALTERAR" somente caso alguma alteração fosse feita no formulário

*** IMPORTANTE """ :
- Gostaria que o "range" da pesquisa fosse restrito ao intervalo dentro da tabela e não aquele tipo de pesquisa que envolve a última linha com dados na planilha.
Ex.: o "range" da consulta seria TB_Cadastro[ID], TB_Cadastro[Nome] ou TB_Cadastro[CPF]

Tentei explicar nos comentários do código... apenas iniciei a escrita mas tive dificuldades.

Quem puder olhar já acrescentei o início da escrita do código do botão"ALTERAR" e se puderem ajudar já na escrita dele.

Obrigado
Você não está autorizado a ver ou baixar esse anexo.
Por SandroLima
#36491
Boa noite, amigos do fórum

Podem me ajudar na correção desse código para o botão consultar?

Até o momento cheguei nessa escrita... mas não estou sabendo como escrever a parte sobre o range da pesquisa

Private Sub Bto_Consultar_Click()

' Código para pesquisar o ID, Nome ou CPF inserido na tabela (banco de dados) e preencher as demais textbox e combobox
'a partir de uma das três informações inseridas (ID, Nome ou CPF)
'
'
' *** IMPORTANTE *** Range de pesquisa restrito à tabela - TB_Cadastro[ID], TB_Cadastro[Nome] e/ou TB_Cadastro[CPF]
'
' Código para bloquear as demais caixas de texto ao final da pesquisa, exceto ID, Nome e CPF
'
'
' Habilitasse o botão "ALTERAR" somente caso alguma alteração fosse feita na pesquisa


Dim tabela As ListObject
Dim lin As Long
Dim ULinha As Long

Set tabela = wsh_Cadastro.ListObjects("TB_Cadastro")

ULinha = tabela.ListRows(1).Range(1, 1).End(xlDown).Row

For lin = tabela.ListRows(1).Range(1, 1).Row To ULinha

If txt_ID.Text = Range("TB_Pacientes[[lin],[ID]]").Value Or txt_Nome.Text = Range("TB_Pacientes[[lin],[Nome]]") Or txt_CPF.Text = Range("TB_Pacientes[[lin],[CPF]]") Then

Me.txt_ID = Range("TB_Cadastro[[lin],[ID]]").Value
Me.txt_Data.Text = Range("TB_Cadastro[[lin],[Data]]").Value
Me.txt_Cadastro.Text = Range("TB_Cadastro[[lin],[Cadastro]]").Value
Me.txt_Nome = Range("TB_Cadastro[[lin],[Nome]]").Value
Me.cbb_Sexo = Range("TB_Cadastro[[lin],[Sexo]]").Value
Me.txt_DataNasc = Range("TB_Cadastro[[lin],[Data Nasc]]").Value
Me.txt_Idade = Range("TB_Cadastro[[lin],[Idade]]").Value
Me.cbb_EstadoCivil = Range("TB_Cadastro[[lin],[Nome]]").Value
Me.txt_CPF = Range("TB_Cadastro[[lin],[CPF]]").Value

End If

Next
Set tabela = Nothing

End Sub

Podem me ajudar a descrever o intervalo de pesquisa corretamente?

Envio a planilha novamente onde a tabela foi nomeada e já com o código acima.
Você não está autorizado a ver ou baixar esse anexo.
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