FORMULAIRE VBA

Résolu
mohjatr Messages postés 15 Statut Membre -  
mohjatr Messages postés 15 Statut Membre -
Bonjour,

Je n'arrive pas à insérer des données entrées dans un formulaire, que j'ai créé sur vba, à la suite de données existantes sur une même feuille de calcul.

J'ai l'impression d'être obligée de donnée une cellule précise où insérer les données alors que je voudrais que les données s'insèrent juste à la suite.

Merci d'avance pour votre aide

1 réponse

jordane45 Messages postés 40050 Statut Modérateur 4 754
 
Bonjour,

Sans voir ton code .... difficile de te répondre.....

Mais je pense que tu n'as pas pensé à dérterminer le numéro de la dernière ligne non vide de ton tableau... pour ajouter à la suite .. les nouvelles valeurs...

Donc :
'trouver la dernière ligne du tableau
dernLigne = Range("A" & Rows.Count).End(xlUp).Row

'Ajout à la suite
Cells(dernLigne+1 , 1).value = "nouvelle valeur"



0
mohjatr Messages postés 15 Statut Membre
 
Bonjour Jordane

J'ai un code un peu bizarre que j'ai essayé de récupérer en ligne :

Private Sub Editer_Click()


Do While fichier
If Sheets(1).Cells(i, 1) <> "" Then
i = 1
Else
Sheets(1).Cells(i, 1) = Fiche_Client.Nom.Value
Sheets(1).Cells(i, 2) = Fiche_Client.Prénom.Value
Sheets(1).Cells(i, 3) = Fiche_Client.Téléphone.Value
Sheets(1).Cells(i, 4) = Fiche_Client.Adresse.Value
Sheets(1).Cells(i, 5) = Fiche_Client.Ville.Value
Sheets(1).Cells(i, 6) = Fiche_Client.Code_Postal.Value
i = i + 1
synthese.Sheets(1).Range ("C" & i & ":H" & i)
Workbooks(fichier).Close
End If
Loop

End Sub


EDIT : Ajout des balises de code
0
mohjatr Messages postés 15 Statut Membre
 
Finalement merci Jordane j'ai refait le code à partir de la base que tu m'as donnée :
Private Sub Editer_Click()

'trouver la dernière ligne du tableau
dernLigne = Range("C" & Rows.Count).End(xlUp).Row

'Ajout à la suite
Cells(dernLigne + 1, 1).Value = Fiche_Client.Nom.Value
Cells(dernLigne + 1, 2).Value = Fiche_Client.Prénom.Value
Cells(dernLigne + 1, 3).Value = Fiche_Client.Téléphone.Value
Cells(dernLigne + 1, 4).Value = Fiche_Client.Adresse.Value
Cells(dernLigne + 1, 5).Value = Fiche_Client.Ville.Value
Cells(dernLigne + 1, 6).Value = Fiche_Client.Code_Postal.Value

End Sub

Ca marche, mais je voudrais décaler les cellules pour qu'elle s'insèrent à la suite mais en colonne C, pas A. Aussi je voudrais que le formulaire disparaisse a la fin de la saisie.

Merci d'avance

Cordialement

Mohja
0
jordane45 Messages postés 40050 Statut Modérateur 4 754 > mohjatr Messages postés 15 Statut Membre
 

je voudrais décaler les cellules pour qu'elle s'insèrent à la suite mais en colonne C, pas A

Il te suffit de modifier le second argument de Cells(ligne,colonne)
Cells(dernLigne + 1, 3).Value = Fiche_Client.Nom.Value 
Cells(dernLigne + 1, 4).Value = Fiche_Client.Prénom.Value 
'etc....



. Aussi je voudrais que le formulaire disparaisse a la fin de la saisie.

userform1.hide




PS: A l'avenir... merci d'utiliser les balises de code !
=> https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
0
mohjatr Messages postés 15 Statut Membre
 
Merci beaucoup !
0
mohjatr Messages postés 15 Statut Membre
 
Rebonjour

Je voudrais, à partir d'un deuxième formulaire, avoir une liste déroulante qui me permettrais de selectionner un nom dans les noms de la colonne C, puis charger les cellules remplies pour les modifier et en cliquant sur valider je pourrais corriger la ligne en question.

Est ce que vous sauriez comment faire ?

Merci d'avance

Cordialement
0