FORMULAIRE VBA

Résolu/Fermé
mohjatr Messages postés 14 Date d'inscription vendredi 10 juin 2016 Statut Membre Dernière intervention 14 juin 2016 - 10 juin 2016 à 10:06
mohjatr Messages postés 14 Date d'inscription vendredi 10 juin 2016 Statut Membre Dernière intervention 14 juin 2016 - 10 juin 2016 à 15:39
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 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
10 juin 2016 à 10:13
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 14 Date d'inscription vendredi 10 juin 2016 Statut Membre Dernière intervention 14 juin 2016
Modifié par jordane45 le 10/06/2016 à 10:22
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 14 Date d'inscription vendredi 10 juin 2016 Statut Membre Dernière intervention 14 juin 2016
10 juin 2016 à 10:38
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 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > mohjatr Messages postés 14 Date d'inscription vendredi 10 juin 2016 Statut Membre Dernière intervention 14 juin 2016
10 juin 2016 à 10:53

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 14 Date d'inscription vendredi 10 juin 2016 Statut Membre Dernière intervention 14 juin 2016
10 juin 2016 à 11:21
Merci beaucoup !
0
mohjatr Messages postés 14 Date d'inscription vendredi 10 juin 2016 Statut Membre Dernière intervention 14 juin 2016
10 juin 2016 à 15:39
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