Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
523 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Aide pour la programmation d'un userform remplissant une ligne Excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Aide pour la programmation d'un userform remplissant une ligne Excel

n°1859183
nathanc
Posté le 09-03-2009 à 10:19:35  profilanswer
 

Bonjour, dans le cadre de mon stage je dois programmer un fichier Excel sur une liste de sous-traitant. Je suis actuellement débutant en VBA.
L’userform créé une ligne d’informations sur un sous traitant. L’userform  se compose de textboxs que l’utilisateur va remplir et ensuite cliquer sur ok pour confirmer.  
Chaque textbox remplit une cellule d’une ligne du tableau de sous traitant
J’ai rajouté une condition sur la cellule dans la colonne A qui est la suivant :
 
« Si la cellule Ai ne contient rien alors effectuer ces actions. »
 
Je propose cette programmation :
 
Sub AjoutSTTEST()           (Macro créé quand l’utilisateur clique sur « ok » pour confirmer)
 
Dim ValeurA As String
For i = 1 To n
ValeurA = ActiveCell.ValueR1Ai
  If ValeurA = "" Then
  ActiveCell.ValueR1Ai = TextBox1.Value
  ActiveCell.ValueR1Bi = TextBox8.Value
  ActiveCell.ValueR1Ci = TextBox3.Value
  ActiveCell.ValueR1Di = TextBox4.Value
  ActiveCell.ValueR1Ei = TextBox5.Value
  ActiveCell.ValueR1Fi = TextBox6.Value
  ActiveCell.ValueR1Gi = TextBox7.Value
  ActiveCell.ValueR1Hi = TextBox9.Value
  ActiveCell.ValueR1Ii = TextBox10.Value
  End If
Next i
   
End Sub
 
Voila, je vous remercie de votre patience!

mood
Publicité
Posté le 09-03-2009 à 10:19:35  profilanswer
 

n°1859263
nathanc
Posté le 09-03-2009 à 12:26:50  profilanswer
 

For i = 1 To n
  If IsEmpty(Range("Ai" )) Then
  ActiveCell.ValueR1Ai = TextBox1.Value
  ActiveCell.ValueR1Bi = TextBox8.Value
  ActiveCell.ValueR1Ci = TextBox3.Value
  ActiveCell.ValueR1Di = TextBox4.Value
  ActiveCell.ValueR1Ei = TextBox5.Value
  ActiveCell.ValueR1Fi = TextBox6.Value
  ActiveCell.ValueR1Gi = TextBox7.Value
  ActiveCell.ValueR1Hi = TextBox9.Value
  ActiveCell.ValueR1Ii = TextBox10.Value
  End If
Next i
 
End Sub
 
Est ce que cette programmatation est meilleure ?
Je vous remercie de votre patience !

n°1859284
nathanc
Posté le 09-03-2009 à 13:40:27  profilanswer
 

Bon, après mes recherches, je suis arrivé à une autre programmation :
Sub Derniereligne()
Dim a as Long
Range("A65536" ).End(xlUp).Offset(1, 0).Select
Activecell.row = a  
Range("Aa" ).Value = TextBox1.Value
  Range("Ba" ).Value = TextBox8.Value
  Range("Ca" ).Value = TextBox3.Value
  Range("Da" ).Value = TextBox4.Value
  Range("Ea" ).Value = TextBox5.Value
  Range("Fa" ).Value = TextBox6.Value
  Range("Ga" ).Value = TextBox7.Value
  Range("Ha" ).Value = TextBox9.Value
  Range("Ia" ).Value = TextBox10.Value
 
 
End Sub
 
 
En fait, ce que je recherche c'est une détection de la première ligne non utlisée dans la colonne A, et l'ajout de cellules dans cette ligne !!
Pouvez vous m'aider ?

n°1859296
nathanc
Posté le 09-03-2009 à 14:02:07  profilanswer
 

Voila, j'ai réussi a recupérer le numero de la premiere ligne non utilisée avec ceci :
 
Static a As Long
 
Derniere_ligne = ActiveSheet.Columns.End(xlDown).Row
 
Premiere_ligne = Derniere_ligne + 1
 
Range("Aa" ).Value = TextBox1.Value  
  Range("Ba" ).Value = TextBox8.Value  
  Range("Ca" ).Value = TextBox3.Value  
  Range("Da" ).Value = TextBox4.Value  
  Range("Ea" ).Value = TextBox5.Value  
  Range("Fa" ).Value = TextBox6.Value  
  Range("Ga" ).Value = TextBox7.Value  
  Range("Ha" ).Value = TextBox9.Value  
  Range("Ia" ).Value = TextBox10.Value  
 
Comment j'insere ma valeur de ligne dans la formule range ??

n°1859378
nathanc
Posté le 09-03-2009 à 16:02:35  profilanswer
 

Voila, j'ai reussi a prendre la premiere ligne non remplie, mais je n'arrive pas à prendre la valeur d'une variable dans la fonction range !!
 
Pouvez vous m'aider ?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Aide pour la programmation d'un userform remplissant une ligne Excel

 

Sujets relatifs
Surligner une ligne d'un paragraphe au passage de la sourisNoob en JS et besoin d'aide!
macro avec VBA sur Word et Excelconnexion ado avec acces et besoin d'aide pour code vb svp
VBA excel arreter macro via bouton[Résolu] Aide en C
fusion excel réalisableMa variable publique est désinitialisée par mon UserForm
gestion de fichiers excel à l'aide d'une macro spécifique 
Plus de sujets relatifs à : Aide pour la programmation d'un userform remplissant une ligne Excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR