Comment faire 1 variable en rassemblant 1texte et 1 variable

Comment faire 1 variable en rassemblant 1texte et 1 variable - VB/VBA/VBS - Programmation

Marsh Posté le 10-02-2005 à 01:12:31    

voila pour moi c tous simple j'ai essayer variables = "text" & varaible1    mais c pas bon. Je veut l'utiliser pour un SendKeys mais le problème kan je mes SendKeys variables ba le ptoblème ses qu'il mécrit textvariable1. Dans mon programme je veut que sa fasse comme sa variables = "login" & temp
 
j'ai plusieur variable qui se nomme login1, login2, login3 ... la variable temp monte de 1, 2, 3 .... donc a la place de prendre la varabiable login1  il me marque login1. J'espère que j'ai pas mal expliquer.
ciao

Reply

Marsh Posté le 10-02-2005 à 01:12:31   

Reply

Marsh Posté le 10-02-2005 à 03:44:51    

punaise si ton année de naissance est vraie y a de quoi s'inquieter
 
ca donne quoi en francais ?
le & ca sert à concaténer, pas a génerer des variables
Utilises les tableaux .
 

Reply

Marsh Posté le 10-02-2005 à 07:56:06    

Dim login(30) : créé un 'tableau ' de 30 cellules sur une ligne.
Dim login(3,10) : créé un 'tableau' de 3 colonnes sur 10 lignes.
msgbox login(3) ' ce code fait appel à la valeur comprise dans la 3e cellule du 'tableau' login.

Reply

Marsh Posté le 10-02-2005 à 10:35:23    

heu nan c pas ma vrai date de naissance en faite j'ai que 16 ans et je sais que programmer en vb avec des sources. Donc ya encore plein de truc que je connais pas en vb.
 
Sinon pour les tableau j'ai toujours pas compris meme si ses simple pour vous. Je veut juste prendre 2 morceau de text que quand il sont mélanger avec le & qui ressemble a une varaible que j'ai fait avant et la réutiliser en tant que variable pas comme text.
 
voila vite fait un ptit bout de code :
 
Dim login As String
Private Sub Form_Load()
login1 = "je veut sa"
login = "login" & 1
MsgBox login
End Sub
 
Dans le msgbox il me mes login1 moi je voudrai que sa marque <je veut sa>


Message édité par lunix546 le 10-02-2005 à 10:47:07
Reply

Marsh Posté le 10-02-2005 à 10:45:22    

tes mots mis bout à bout ne forment pas de phrases cohérentes...
Bon dans le principe et parceque je suis trop bon (et aussi que je crois avoir saisi le sens général de tes propos), tu peux créer des contrôles dont le nom sera issu d'une chaine de caractères.
Par exemple:

dim StrName as string
StrName="MaChequeBocse"
Form1.Controls.Add "VB.CheckBox",StrName,Form1

 
Alors oui, tu vas me dire : "Ca c'est pour un contrôle, banane".
Ce à quoi je te répondrai : "Oui mais c'est déjà un début, voire une piste, et j'ai la flemme de chercher."

Reply

Marsh Posté le 10-02-2005 à 10:49:02    

heu oué merci c toujours sa lol mais en rajoutant un 1 a MaChequeBocse comme MaChequeBocse1 ba qu'il utilise la variable ke j'ai déja mise plus ho avec comme nom de la variable MaChequeBocse1


Message édité par lunix546 le 10-02-2005 à 10:51:19
Reply

Marsh Posté le 10-02-2005 à 11:02:14    

bon tu me fais ch*er, je comprend rien à ce que tu dis, je fais plus d'effort (tout comme toi).

Reply

Marsh Posté le 10-02-2005 à 11:09:28    

Ce qu'il faut que tu comprenne, c'est que quand tu fait un truc genre "login" & 1, c'est que tu créer une String qui a pour valeur "login1". Toi il faut que tu références ta variables, et avec une String c'est pas possible. Et en VB, on peut pas faire ça. Faut donc utiliser des tableaux comme on te l'a dit.
 
D'ailleurs c'est inconcevable de programmer quelque chose sans tableaux, donc renseigne-toi là-dessus d'abord, et reviens ici ensuite si t'as vraiment pas compris ;)

Reply

Marsh Posté le 10-02-2005 à 11:12:15    

lol j'ai donner un exemple plus haut le vla :
 
Dim login As String  
Private Sub Form_Load()  
login1 = "je veut sa"  
login = "login" & 1  
MsgBox login  
End Sub  
 
bon tu voie login je veut qu'il soit = a login1 et que le msgbox marque le text de la variable de login1 soit "je veut sa" mais a la place de me mettre le text de login1 il me marque login1. Ta compris la lol

Reply

Marsh Posté le 10-02-2005 à 11:13:56    

T'as rien compris à ce que j'ai dit alors :cry:
 
Relis une dizaine de fois mon post, et surtout
 
VA TE DOCUMENTER SUR LES TABLEAUX §§§§ /FOU/ /MECHANT/

Reply

Marsh Posté le 10-02-2005 à 11:13:56   

Reply

Marsh Posté le 10-02-2005 à 11:14:13    

ok merci FlorentG mais alors avec les tableau je peut faire comment pour avoir mon text dans le msgbox a la place de login1 ya toujours mon problème.

Reply

Marsh Posté le 10-02-2005 à 11:15:07    

si j'ai compris FlorentG mais le temp que tu post le message je l'ai poster apres lol c'été pour _charlyoleg_

Reply

Marsh Posté le 10-02-2005 à 11:15:41    

T'as un tableau global nommé login. Tu met 'je veux ça' dans login(1). Puis t'as juste à faire appel à login(1) pour retrouver ta String...

Reply

Marsh Posté le 10-02-2005 à 11:25:53    

ta toujours pas compris se que je veut. JE t'explqiue mon code peut etre sa va t'aider. J'ai une variable qui se nome timl et qui mont de +1 a chaque fin de code. j'ai 30 variable se nomment login1, login2 ......, login30. J'ai fait avec un timer qui monte de +1 et a la fin du code je le mes a 0 pour le mettre en boucle. Donc en premier je veut que sa écrive dans un textbox la varaible login1 tous le code continue une fois arriver a la fin du code ma variable de début timl s'ajoute de 1 et le code re commence mais je voudrais utiliser timl pour les nombre apres le login. genre une varable du genre comme sa meme si tu me di c pas possible login = "login" & timp comme sa si le code est revenu 3 fois il mes 3 a timl et il en enrengistre se qui a dans la variable login3. voila mon problème


Message édité par lunix546 le 10-02-2005 à 11:28:27
Reply

Marsh Posté le 10-02-2005 à 11:26:49    

MAIS SI QUE J'AI COMPRIS :fou:
 
 
.
.
 
Fiouuu, désolé.
 
La réponse c'est : TU PEUX PAS EN VB NORMAL. T'ES OBLIGE DE PASSER PAR UN TABLEAU
 

Reply

Marsh Posté le 10-02-2005 à 11:30:01    

ok ok lol v chercher sa avec d tableau mais si tu pouvait me mettre un ptit code sa pourai m'aider :D

Reply

Marsh Posté le 10-02-2005 à 11:30:31    

Non, c'est à toi d'apprendre ce que sont les tableaux, sinon t'y arrivera jamais ;)

Reply

Marsh Posté le 10-02-2005 à 11:47:27    

ba ya d cologne et d ligne et chaque case peut contenir quelque chose. Mais bon ses pas pour les cour ou autres c juste pour faire un logiciel tu me donne le code apres je comprend comment l'utiliser

Reply

Marsh Posté le 10-02-2005 à 11:48:08    

Non. Car c'est interdit par la charte de la catégorie :D

Reply

Marsh Posté le 10-02-2005 à 11:49:52    

ha bon mais on a le droit de donner des exemple

Reply

Marsh Posté le 10-02-2005 à 11:52:47    

Cherche plutot un cours sur les tableaux sur Internet, ce sera plus bénéfique, parce qu'il te faudra aborder tous les trucs genre les ReDim Preserve, etc...

Reply

Marsh Posté le 10-02-2005 à 11:53:40    

ba je demande pas compliquer tu me donne un exemple et voila

Reply

Marsh Posté le 10-02-2005 à 11:54:10    

J'me rappelle plus comment déclarer les tableaux en VB normal, donc ça va être dur :D

Reply

Marsh Posté le 10-02-2005 à 11:55:43    

:??: ok

Reply

Marsh Posté le 10-02-2005 à 12:03:18    

sinon personne pourrai me donner un exemple??

Reply

Marsh Posté le 10-02-2005 à 14:30:54    

Sans vouloir être "fayot",  
je pense que FlorentG a raison sur ce coup là... :D  
 
Donc regarde un peu des cours (ou livres ou...) sur les tableaux et après essaie de savoir comment tu peux résoudre ton problème avec eux.  
 ;)  
 
A ce moment là, si t'as un problème, mets du code, propose et puis voilà, on pourra t'aider !
 :bounce:

Reply

Marsh Posté le 10-02-2005 à 16:01:27    

oué mais nan j'ai pas envie de faire ma vie avec le vb apres j'ai l'intention de passer au delphi mais je termine mon logiciel la. Je demande pas d cour sur le tableau mais juste un code pour résoudre mon problème. Si on me donne le code je chercherai comment il fonctionne mais svp juste un morceau de code c pas compliquer

Reply

Marsh Posté le 10-02-2005 à 16:31:44    

lunix546 a écrit a écrit :

ta toujours pas compris se que je veut. JE t'explqiue mon code peut etre sa va t'aider.
.... [ j'abrège ]
Genre une varable du genre comme sa meme si tu me di c pas possible login = "login" & timp comme sa si le code est revenu 3 fois il mes 3 a timl et il en enrengistre se qui a dans la variable login3. voila mon problème



Pour moi c une phrase trop longue. Pense a utiliser des points ou des virgules.   :(  
 
Pour ton souci ta variable timp contiendra un nombre compris entre 1 et 30. Tu va donc utiliser un TABLEAU qui aura comme procédure ceci :

Code :
  1. valeur_du_tableau = login( timp )

En clair, tu dis : vas lire dans mon tableau à la cellule ' timp '. C'est ce qu'on te dis depuis le début.
Maintenant, pour écrire dans ton TABLEAU, tu va mettre :

Code :
  1. login( timp ) = valeur_que_tu_veux_mettre

OK ? C'est bon ?  
En cas de soucis on est quand même là. Faut pas avoir peur  :D .
 
Par contre reste en basic, le delphi c'est plus chaud.


Message édité par knakes le 10-02-2005 à 16:32:31
Reply

Marsh Posté le 10-02-2005 à 16:39:45    

Exemple simple

Citation :


dim montab() as string '** les () représentent le tableau du type défini après le "as", donc ici un tableau de chaines de caractères
dim loIndice as long  
loindice=15 '** dernier indice du tableau, donc 16 elements avec le zero !
 
redim montab(loindice)
 
'** on peut aussi définir directement la taille du tableau en faisant :
'** Dim montab(15) as long  
 
montab(0)="toto"
montab(1)="tata"
...
montab(15)="titi"
msgbox montab(15) '** renvoie "titi"


 
Exemple dynamique :
 

Citation :


'** créer un nouveau projet, avec une feuille, un bouton command1, une liste List1
 
private montab() as string
 
'** fonction qui ajoute un élément pstChaine
'** a notre tableau
public Sub AddTab(byval pstChaine as string)
  on error goto first
  redim preserve Montab(ubound(Montab)+1)
  montab(ubound(montab))=pstChaine
  exit sub
 first:
  redim montab(0)
End Sub
 
Private Sub Command1_Click()
Dim lvin_i As Long
DoEvents
AddTab Now
For lvin_i = 0 To UBound(montab)
  List1.AddItem montab(lvin_i)
Next
End Sub


Message édité par _charlyoleg_ le 10-02-2005 à 16:41:31
Reply

Marsh Posté le 10-02-2005 à 16:40:37    

lol knakes,
le temps que je tape tout ça et que je teste (un peu quand même), me suis fait griller  :)


Message édité par _charlyoleg_ le 10-02-2005 à 16:43:07
Reply

Marsh Posté le 10-02-2005 à 17:22:41    

c bon j'ai trouver merci pour l'aide ;D

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed