Pesquisa por Form e...
 
Notifications
Clear all

Pesquisa por Form em retornar Textbox com hora

22 Posts
2 Usuários
0 Reactions
8,421 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Segue o codigo em que estou utilizando mais não consiguo que me retorne o formato hora no textbox3 como na planilha , alguem pode me ajudar neste codigo ?

Public MatrizResultados As Variant
Public Total_Ocorrencias As Long

Private Sub btn_Procurar_Click()
If Me.txt_Procurar.Text = "" Then
MsgBox "Digite um valor para a pesquisa"
Else
Call ProcuraPersonalizada(Me.txt_Procurar.Text)
End If
End Sub

Private Sub SpinButton1_Change()
Dim Linha As Long
Dim TotalOcorrencias As Long

TotalOcorrencias = SpinButton1.Max + 1
Linha = MatrizResultados(SpinButton1.Value)

Label_Registros_Contador.Caption = SpinButton1.Value + 1 & " de " & TotalOcorrencias
TextBox1.Text = Plan1.Cells(Linha, 1).Value
TextBox2.Text = Plan1.Cells(Linha, 2).Value
TextBox3.Text = Plan1.Cells(Linha, 3).Value
TextBox4.Text = Plan1.Cells(Linha, 4).Value
TextBox5.Text = Plan1.Cells(Linha, 5).Value
TextBox6.Text = Plan1.Cells(Linha, 6).Value
TextBox7.Text = Plan1.Cells(Linha, 7).Value
TextBox8.Text = Plan1.Cells(Linha, 8).Value
TextBox9.Text = Plan1.Cells(Linha, 9).Value
TextBox10.Text = Plan1.Cells(Linha, 10).Value
TextBox11.Text = Plan1.Cells(Linha, 11).Value
TextBox12.Text = Plan1.Cells(Linha, 12).Value
TextBox13.Text = Plan1.Cells(Linha, 13).Value
TextBox14.Text = Plan1.Cells(Linha, 14).Value
TextBox15.Text = Plan1.Cells(Linha, 15).Value
TextBox16.Text = Plan1.Cells(Linha, 16).Value
TextBox17.Text = Plan1.Cells(Linha, 17).Value
TextBox18.Text = Plan1.Cells(Linha, 18).Value

End Sub

Private Sub ProcuraPersonalizada(ByVal TermoPesquisado As String)
Dim Busca As Range
Dim Primeira_Ocorrencia As String
Dim Resultados As String

'Executa a busca
Set Busca = Plan1.Cells.Find(What:=TermoPesquisado, After:=Range("A1"), LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)

'Caso tenha encontrado alguma ocorrência...
If Not Busca Is Nothing Then

Primeira_Ocorrencia = Busca.Address
Resultados = Busca.Row 'Lista o primeiro resultado na variavel

'Neste loop, pesquisa todas as próximas ocorrências para
'o termo pesquisado
Do
Set Busca = Plan1.Cells.FindNext(After:=Busca)

If Not Busca.Address Like Primeira_Ocorrencia Then
Resultados = Resultados & ";" & Busca.Row
End If
Loop Until Busca.Address Like Primeira_Ocorrencia

MatrizResultados = Split(Resultados, ";")

SpinButton1.Max = UBound(MatrizResultados) 'Valor maximo do seletor de registros

SpinButton1.Enabled = True

Label_Registros_Contador.Caption = "1 de " & UBound(MatrizResultados) + 1

TextBox1.Text = Plan1.Cells(MatrizResultados(0), 1).Value
TextBox2.Text = Plan1.Cells(MatrizResultados(0), 2).Value
TextBox3.Text = Plan1.Cells(MatrizResultados(0), 3).Value
TextBox4.Text = Plan1.Cells(MatrizResultados(0), 4).Value
TextBox5.Text = Plan1.Cells(MatrizResultados(0), 5).Value
TextBox6.Text = Plan1.Cells(MatrizResultados(0), 6).Value
TextBox7.Text = Plan1.Cells(MatrizResultados(0), 7).Value
TextBox8.Text = Plan1.Cells(MatrizResultados(0), 8).Value
TextBox9.Text = Plan1.Cells(MatrizResultados(0), 9).Value
TextBox10.Text = Plan1.Cells(MatrizResultados(0), 10).Value
TextBox11.Text = Plan1.Cells(MatrizResultados(0), 11).Value
TextBox12.Text = Plan1.Cells(MatrizResultados(0), 12).Value
TextBox13.Text = Plan1.Cells(MatrizResultados(0), 13).Value
TextBox14.Text = Plan1.Cells(MatrizResultados(0), 14).Value
TextBox15.Text = Plan1.Cells(MatrizResultados(0), 15).Value
TextBox16.Text = Plan1.Cells(MatrizResultados(0), 16).Value
TextBox17.Text = Plan1.Cells(MatrizResultados(0), 17).Value
TextBox18.Text = Plan1.Cells(MatrizResultados(0), 18).Value

Else

SpinButton1.Enabled = False
Label_Registros_Contador.Caption = ""

TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox7.Text = ""
TextBox8.Text = ""
TextBox9.Text = ""
TextBox10.Text = ""
TextBox11.Text = ""
TextBox12.Text = ""
TextBox13.Text = ""
TextBox14.Text = ""
TextBox15.Text = ""
TextBox16.Text = ""
TextBox17.Text = ""
TextBox18.Text = ""

MsgBox "Nenhum resultado para '" & TermoPesquisado & "' foi encontrado."

End If

End Sub

Private Sub UserForm_Initialize()

SpinButton1.Enabled = False
Label_Registros_Contador.Caption = ""

End Sub

 
Postado : 06/04/2010 4:47 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

santos, veja nesse tópico :

viewtopic.php?f=23&t=149

[]s

 
Postado : 06/04/2010 8:16 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

amigo tentei com este tambem porem não retorna o valor em hora...

 
Postado : 07/04/2010 6:21 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Santos, tente assim :

Para a primeira rotina:
Private Sub SpinButton1_Change()
Dim Linha As Long
Dim TotalOcorrencias As Long

TotalOcorrencias = SpinButton1.Max + 1
Linha = MatrizResultados(SpinButton1.Value)

Label_Registros_Contador.Caption = SpinButton1.Value + 1 & " de " & TotalOcorrencias
TextBox1.Text = Plan1.Cells(Linha, 1).Value
TextBox2.Text = Plan1.Cells(Linha, 2).Value
TextBox3 = Format(Plan1.Cells(linha, 3).Value, "h:mm;@")
.................

Se for isso, faça a adaptação para a outra rotina.

[]s

 
Postado : 07/04/2010 6:02 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Cara e isso mesmo, alterei nas duas para dar certo, so mais uma coisinha , se a hora for negativa ?

 
Postado : 08/04/2010 2:13 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Cara e isso mesmo, alterei nas duas para dar certo, so mais uma coisinha , se a hora for negativa ?

santos, o que voce quer dizer com horas negativas ? o valor que você está puxando é resultado de subtração das mesmas ? no resultado aparece como negativa ? Se não aparece, teria de mudar a opção de Sistema de data 1904, mas preste atenção que isso alterara o sistema de datas.

[]s

 
Postado : 10/04/2010 9:32 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Sim estou utilizando o formato 1904, o valor na celula pesquisada e resultado de subtração. ( - 10:00) no textbox não aparece o bendito sinal (-).

 
Postado : 12/04/2010 7:39 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

...textbox não aparece o bendito sinal (-)

Para exibir a hora se for negativa com o sinal (-) altere para essa formatação:

TextBox3 = Format(WorksheetFunction.Text(Plan1.Cells(linha, 3).Value, "h:mm;@"))

[]s

 
Postado : 12/04/2010 9:16 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Camarada muito obrigado pela sua disposição em ajudar e isso mesmo que estava precisando... valeuuuuu!!!!!

 
Postado : 13/04/2010 1:37 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro obrigado pela dica anterior... mais uma coisa, e possivel o textbox retornar a mesma cor de preenchimento da celula pesquisada ? Ex: O textbox me retorna o valor e a formatação .

 
Postado : 13/04/2010 2:16 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Para retornar o Valor e a Formatação, temos algumas opções conforme abaixo.
Substitua a linha :
TextBox3 = Format(WorksheetFunction.Text(Plan1.Cells(linha, 3).Value, "h:mm;@"))

Por uma das abaixo :

With Me.TextBox3
    .Value = Format(WorksheetFunction.Text(Plan1.Cells(linha, 3).Value, "h:mm;@")) 'retorna o valor da celula
    .BackColor = Plan1.Cells(linha, 3).Interior.Color 'Retorna a cor de preenchimeto da celula
    .ForeColor = Plan1.Cells(linha, 3).Font.Color 'Retorna a Cor da fonte da celula
End With

With Sheets("Plan1").Cells(linha, 3)
    TextBox3.Text = Format(WorksheetFunction.Text(Plan1.Cells(linha, 3).Value, "h:mm;@"))
    TextBox3.BackColor = .Interior.Color
    TextBox3.ForeColor = .Font.Color
End With

As duas surtem o mesmo efeito e objetivos.
Veja nas Propriedades do TextBox outras formatações que podem ser adaptadas a essa rotina.

abraços

 
Postado : 13/04/2010 6:32 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caro amigo, obrigado pela dica, mais quando substituo esta linha o textbox não retorna a cor de preenchimento, mais muda a cor de fundo do form ... sabe o que pode esta ocorrendo ? Obrigado

 
Postado : 26/04/2010 10:38 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

De uma olhada no exemplo abaixo, não achei opção para anexar arquivo diretamente no Forun, por isso usei o 4shared :

http://www.4shared.com/document/nKe0P_w ... xtbox.html

Veja em sua rotina se foi alterado no lugar certo.

abraços

 
Postado : 26/04/2010 10:25 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro não consigo baixar no link indicado o servidor que uso a maquina e bloquea este site. pode enviar para meu e-mail [email protected]

 
Postado : 28/04/2010 8:25 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro não consigo baixar no link indicado o servidor que uso a maquina e bloquea este site. pode enviar para meu e-mail [email protected]

Arquivo enviado.

[]s

 
Postado : 30/04/2010 7:21 pm
Página 1 / 2