-
Total de itens
574 -
Registro em
-
Última visita
Posts postados por Danleonhart
-
-
Olá Jucla...
Não é no evento KeyPress...mas nos eventos KeyDown ou KeyUp:
Usando a estrutura Select Case:
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case vbKeyReturn Text2.SetFocus End Select End Sub
Com If Then:Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = vbKeyReturn Then Text2.SetFocus End If End Sub
Ambos funcionam.
-
Você já pensou em dividir os procedimentos da Sub Teste ?
outro detalhe é que para poder chamar a Sub Teste de outro Form ela tem de estar "Public" ou simplesmente sem o "Private"...
Minha ideia seria colocar parte do script Teste, chamar o outro Form, e depois complementar o procedimento chamando outra Sub (tipo Teste2()) juntando as informações da sub Teste + as infos coletadas do outro Form + Teste2...
Se sabermos realmente o que você quer fazer, fica mais fácil de darmos idéias mais concretas e simples :rolleyes:
Qualquer coisa posta o código completo ou até o projeto...
-
Danielsh...
Você tá começando agora, certo ?!
sabes lógica de programação ??? algoritmo ???
sabes diferenciar os tipos de dados ? String, Integer, Long...
É bom saber bem estes conceitos básicos antes de partir para a parte prática com BD's...
Estou usando o mais simples possível, access 2000 e um Data, estou iniciando agora.Certo... e qual o modo de conexão com o BD ??? DAO ou ADO ???
pelo que posso notar no código é DAO...
então, é bom saber qual vai usar...
eu não uso muito o DAO...só sei o básico...já o ADO, tenho alguns projetos com ele, então conheço um pouco mais.
pelo que notei você quer listar os nomes que começam com a letra "b", é isso ???
faça um teste...se no banco tem um nome, por exemplo João, coloque assim na linha:
dtb_clientes.Recordset.FindFirst "João"
só para teste...
Outro detalhe é que você não especificou o script inicial... pode ser que estejas procurando o nome na coluna "Código"... :mellow:
-
Que tipo de acesso você usa para comunicar-se com o BD ??? é DAO, RDO ou ADO ???
ADO é bem melhor, mais atual e mais usada...existem inúmeros exemplos com ele aqui mesmo no fórum.
Se fosse com ADO, eu faria com um "SELECT WHERE"...
Um exemplo:
Dim rs As ADODB.Recordset Dim conn As ADODB.Connection Dim nome As String Set conn = New ADODB.Connection conn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\Bases de Dados\BIBLIO.accdb;Persist Security Info=False;" nome = "Addison-Wesley" Set rs = New ADODB.Recordset rs.CursorLocation = adUseClient rs.Open "SELECT Name,Address,Telephone FROM Publishers WHERE Name='" & nome & "'", conn MsgBox "Nome : " & rs("Name") & vbNewLine & "Endereço : " & rs("Address") & vbNewLine & "Telefone : " & rs("Telephone") conn.Close
- No exemplo acima, faço uma conexão ADO com o banco Access 2007 denominado "BIBLIO";
- Faço uma consulta a tabela "Publishers";
- Na consulta seleciono apenas os campos: "Name, Address e Telephone";
- Determino que "apenas" os dados referente ao nome "Addison-Wesley" deve ser apresentado (uso o WHERE);
- Apresento em caixa de diálogo o que foi selecionado no BD.
Se quiser saber mais sobre ADO :
http://www.macoratti.net/ado_vbas.htm
ftp://ftp.cefetes.br/Cursos/Geomatica/Ger...muito%20boa.pdf
http://www.codelines.com/ManualVB/Cap%C3%A...C3%ADtulo19.htm
Existe muito mais conteúdo no Google.
-
Só lembrando que se for colocado mais de dois "espaços" o script não corrigirá... :unsure:
-
Se seu Vetor só vai ter tamanho 3, informe isso quando o declarar... e se vai trabalhar com numeros defina seu tipo como Integer, Long ou Double...você o colocou como String e está efetuando cálculos com ele...
pode até funcionar mas não é elegante.
Dim VALOR(3) As Double VALOR(0) = 10.8 VALOR(1) = 20.4 VALOR(2) = 30.1 ' Um vetor de 3 valores Double
Quando quiser pegar os valores que estão dentro do vetor fica mais simples usar o "For" com "LBound" e "UBound"Dim n As Integer Dim Soma As Double For n = LBound(VALOR) To UBound(VALOR) Soma = Soma + VALOR(n) Next n ' O resultado dessa soma está na variável Soma...
Estou no trabalho quando chegar vejo melhor esse teu erro...
mas fica a dica :rolleyes:
-
-
Olá Julio...
Este fórum é de Visual Basic 6...
para assuntos sobre a plataforma NET (inclusive o VB.NET) poste no fórum abaixo:
-
Você pode abrir o projeto com a IDE que está realmente instalada na máquina sim, que vai rolar beleza !
Como falei acima, funciona...
-
Bem, eu tenho um VB-6 Portable que eu mesmo criei... e ele cria o "Executável" sim...só não cria o "Package & Deployment".
Você pode abrir o projeto com a IDE que está realmente instalada na máquina sim, que vai rolar beleza !
-
-
:blink: ???
Que tipo de conexão você usa ??? ADO ou DAO ???
Qual o tipo de banco de dados que está usando ??? SQL, Access, MySQL, Firebird ... :huh:
-
Respondendo a como você pode alterar o ítem clicado em uma List:
Sub SetNomeLista() Dim I As Integer Dim vIt As String, sIt As String For I = 0 To Lst1.ListCount - 1 If Lst1.Selected(I) = True Then vIt = Lst1.List(I) sIt = InputBox("Novo nome :", "Alteração") Lst1.List(I) = sIt End If Next I Lst1.Refresh End Sub
Se preferir o TextBox basta substituir o Input por ele... :rolleyes:
-
Lucas... esse script é de VB.NET cara :mellow:
-
Olá Lucas!
Explica melhor o que você quer...
Tipo:
Esse ListBox terá mais de uma palavra ?
Assim:
Casa
Carro
Moto
Iate
aí você digita Mansão no TextBox e clica em cima de Casa, e o substitui... é isso ???
EDIÇÃO:
Aproveita e coloca o código que você criou até agora...
-
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'
' NESTA PARTE EU QUERIA ABRIR UM OUTRO ARQUIVO TEXTO E EDITÁ-LO COM AS INFORMAÇÕES DENTRO DESSE MESMO LOOP!!!!
' MAS QUANDO USO O OPEN, ELE DIZ QUE O ARQUIVO JÁ ESTÁ ABERTO!!!
'
'
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
E está mesmo !
se ao chegar nessa parte você não mais necessitar usar o primeiro arquivo, feche-o...com a instrução "Close #suaVariavel".
Se ainda vai precisar do mesmo aberto, aconselho a utilizar mais um FreeFile... ou para simplificar, ao invés de criar variáveis usar apenas números...tipo:
Open .FoundFiles(I) For Input As #1 Open .FoundFiles(I) For Input As #2
Bem, é minha sugestão... pois você está usando o editor VBA do Excel, e poucas vezes o utilizo... :rolleyes:
-
Tenta isso:
Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then KeyAscii = 0 End Sub
Vale lembrar o que foi dito pelo sacofritoxd...se tiver outras rotinas pode ser esse o problema...
Se não funcionar, posta o código...facilita bastante :rolleyes:
-
Cadê o código ??? :blink:
Posta pra gente vê como você está fazendo...
estais utilizando FileSystemObject ou Open com FreeFile ??? :mellow:
-
Sim...você pode usar query do SQL no VB-6 com banco de dados Access...
quais os controles que está usando ???
você usa DAO e não ADO...eu particularmente prefiro o ADO...
-
Olá...
Eu não uso o FindFirst...
aconselho usar a query SQL "SELECT WHERE"...
tipo assim:
Dim criterio As String criterio = "granja" "SELECT * FROM tabela WHERE campo='" & criterio & "'"
Acho que dá pra sacar...se não, quando chegar do trabalho dou uma olhada no seu projeto...
VALEU !
-
Frata...
Isso deve tá ocorrendo porque em seu código deves ter programado para ocultar algum Form ("Form1.Hide") e ao fechar a aplicação não estais finalizando o Form...
Isso pode ser contornado colocando este script no Evento Unload do Form principal...mas tem de ser no Form principal mesmo, e ele não pode ser descarregado em nenhum momento se não encerra tudo:
Private Sub Frm_Principal_Unload(Cancel As Integer) Dim Frm As Form For Each Frm In Forms Unload Frm Next Frm End Sub
Valeu !
-
Olá Zow...
Tá ocorrendo erro porque você não "fechou" o uso do "If"...
cê tem que finalizar o If usando o "End If"
Veja seu código mais organizado:
Dim J As Long Dim quantidade As Long quantidade = Application.Sheets.Count For J = 1 To quantidade If nome = Sheets(J).Name Then MsgBox "Todas as planilhas já foram carregadas" End If Next J
Veja que só adicionei o "End If"...
-
OK !
Eu desisti de criar algo parecido com o GC do VS para o VB-6...
mas foi muito instrutivo suas informações...
estou a aprender Java...e é uma plataforma completamente diferente, mas não consigo me desamarrar do VB-6 :rolleyes:
VALEU !
-
É... eu sei disso também...
mais estou sussa pois o que queria descobrir já descobri...
Passar para outra text.Box teclando ENTER
em Visual Basic
Postado · Editado por Danleonhart
Nunca havia feito no KeyPress...mas funciona também:
OBS:
13 = vbKeyReturn
Uma constante do VB-6
se quiser ver mais constantes faça o seguinte:
- Com o VB aberto clique em "F2";
- Depois digite: KeyCodeConstants
- Depois aperte "ENTER"...
O Object Browser é de grande ajuda para entender a funcionalidade de diversas bibliotecas e componentes da IDE.