Problème avec un textbox VBA sous Excel
Forum Programmation : Problème avec un textbox VBA sous Excel
Bonjour
je suis novice dans le VBA sous Excel.
j'ai créer un userform dans lequel j'ai mis un textbox.
la valeur du textbox doit être copier dans une cellule A7.
Si il y a déjà du text dans A7 alors la valeur du textbox doit se copier dans A27 puis A47.
Jusqu'à la j'arrive c'est ensuite que sa se gate.
Maintenant si je veux revenir au début admettons que A27 et A47 contiennent déjà du texte, la valeur du textbox devra se mettre automatiquement dans la cellule vide donc A7.
Alors j'ai essayé pas mal de code et à chaque fois que j'effaçais une cellule A7 A27 ou A47 pour que le textbox mette sa valeur il me la copiait dans la cellule vide plus les autres.
Merci d'avance si quelqu'un peut m'aider sa serait super.
Sa me rend dingue
Hello,
Voici une solution je pense a ton probleme...
Code :
|
Bonne lecture
Je lui ai répondu : embauchez moi et je vous aiderai a le trouver !!
Répondre à leghola
Salut
je te remercie déjà de m'aider j'ai essayé avec ton code mais par contre je ne sais pas si je dois le mettre dans un module ou dans le bouton d'enclenchement du userform (j'ai essayé les deux à chaque fois il me mettait l'erreur instruction end sub attendu et une fois que j'en mettais un il me surlignait Private valeur ajouté as boolean j'ai aussi essayé avec dim valeur ajouté as boolean alors la c'est le const nbcellules qui veut plus.
voila lol si tu peux encore m'aider sa serait nikel
a+
Hello,
mets le tout dans un module si tu veux.
ensuite tu lances"TestCellule" via un bouton
Attention les déclarations (private/const, etc) doivent etre tout en haut du module , rien ne doit etre écrit avant ces lignes (pas de sub ou autre)
tu modifies aussi ceci :
Const ValeurAEcrire As String = "YouplaBoumm"
Public Sub TestCellule()
par
Public Sub TestCellule(ValeurAEcrire As String)
Dans ton code de Bouton_Click tu fais :
TestCellule(Textbox.text)
Voila,
a+
nico
Je lui ai répondu : embauchez moi et je vous aiderai a le trouver !!
Répondre à leghola
Oui désolé j'avais pas capté tout de suite le public sub effectivement j'ai fais les changements que tu ma dis car c'est vrai qu'avec Const ValeurAEcrire As String = "YouplaBoumm" sa me donnais tout le temps Youplaboumm.
Donc maintenant le code parait bon vue qu'il n'y a pas d'erreur détecté, mais par contre il ne m'affiche pas la valeur du textbox dans la cellule en fait il ne m'affiche rien apparement (mais c'est que l'avis d'un novice lol) il semblerait qui ne prend pas en compte la variable ValeurAEcrire as string qui nomme textbox.text
J'ai essayé avec as variant et d'autres rien non plus.
merci encore de ton aide je sent qu'on touche au but lol
Hello,
Ton textbox s'appelle comment ?
Quel est le code VBA que tu as écris dans l'evenement click de ton bouton ?
Je pense que c'est une connerie a 2euros qui doit se ballader, suffit de la localiser
a+
Nico
Je lui ai répondu : embauchez moi et je vous aiderai a le trouver !!
Répondre à leghola
salut
voila ce qu'il y a dans mon bouton: (mon textbox s'appelle textbox1)
Private Sub CommandButton1_Click()
sheets"blabla".activate
Call TestCellule(TextBox1.Text)
et ce qu'il y a dans mon module:
Private ValeurAjoutee As Boolean
Const NbCellules As Single = 3
Public Sub TestCellule(ValeurAEcrire As String)
For i = 1 To NbCellules
Select Case i
Case 1: ValeurAjoutee = TestSiCelluleVide("P7" )
Case 2: ValeurAjoutee = TestSiCelluleVide("P27" )
Case 3: ValeurAjoutee = TestSiCelluleVide("P47" )
End Select
If ValeurAjoutee Then Exit For
Next i
If ValeurAjoutee = False Then Range("P7" ).Value = ValeurAEcrire
End Sub
Private Function TestSiCelluleVide(Cellule As String) As Boolean
Dim ret As Boolean
ret = IsEmpty(Range(Cellule).Value)
If ret Then Range(Cellule).Value = ValeurAEcrire
TestSiCelluleVide = ret
Unload userform1
End Function
Voila j'ai rien d'autre dans le bouton ou le module j'ai tous effacé pour être sur.
Hello,
Alors 2 problemes detectés
1. ton Unload userform1 tu le mets après ton call pas dans la fonction....
2. ma ValeurAEcrire étant une const, je la passais tranquille entre les fonctions. La c différent donc :
Code :
|
A+
Nico
Je lui ai répondu : embauchez moi et je vous aiderai a le trouver !!
Répondre à leghola
Salut
Super sa marche nikel merci encore de ton aide, sa n'a pas du être facile avec un novice.
J'en pleure de joie lol
a+
Hello,
Content que ca fonctionne.
Si tu as d'autres problemes n'hésite pas
A++
Nico
Je lui ai répondu : embauchez moi et je vous aiderai a le trouver !!
Répondre à leghola
Il y a 2056 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
