Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Remplir un tableau ligne par ligne

  • Initiateur de la discussion Initiateur de la discussion br44
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

br44

XLDnaute Impliqué
Bonsoir le forum


Voilà j'ai dossier qui contient un tableau allant de A1:H129 .Je voudrais allimenter se tableau avec un UserForm qui me sert à entrer les clients dans autres classeur .

Je voudrais savoir comment allimenter la plage A5:A127 de manière à que chaque fois qu' un nouveau client est entré le nom de se dernier s'affiche à la suite dans ce tableau .

Exemple: Si je tape "toto" dans l'userform il doit saffiche en a5 dans mon tableau ,
Si je tape "Titi" dans l'userform il doit s'affiche en A6 dans mon tableau ,
et ainsi de suite .


Pour vous aidez je vous mets la procèdure qui bloc , de plus il s'agit d'un classeur qui contient 13 feuilles (12 mois +1 rècap) donc la procèdure boucles sur 12 feuilles .


Ma procèdure :

'Déclare le Chemin1 vers "S.xls"
Dim Chemin1 As String
'Dèclare la variable Wb1
Dim Wb1 As Workbook
Dim Wb2 As Workbook
'Dèclare la variables i
Dim i As Integer


'Dèfinit la varible Chemin1 Chemin1 = "C:\RAPID\GESTION\S.XLS"

'Dèfinit la varaible Wb1 et Wb2
Set Wb1 = Workbooks.Open(Chemin1)
Set Wb2 = ThisWorkbook

'Boucle sur toutes les feuilles du classeur "S.xls
For i = 1 To 12 'le nombres de feuilles du classeur"
Wb1.Sheets(i).Range("A4:A127").Value = NomClient.Value

Next

'Enregistre les données du classeur "S.XLS"
Wb1.Save
'Ferme le Classeur "S.XLS"
Wb1.Close


Si quelqu'un peut m'aider se serais gènial et je vous en remercie d'avance . en espèrant avoire ètè claire je vous dis à plus sur se fil et une bonne soirèe .
BR44
 
Re : Remplir un tableau ligne par ligne

Bonjour

Un essai

Code:
Sub test()
'Déclare le Chemin1 vers "S.xls"
Dim Chemin1 As String
'Déclare la variable Wb1
Dim Wb1 As Workbook
Dim Wb2 As Workbook
'Déclare la variable i
Dim i As Integer


Chemin1 = "C:\RAPID\GESTION\S.XLS"   ' Définit la variable Chemin1


' Définit la variable Wb1 et Wb2
Set Wb1 = Workbooks.Open(Chemin1)
Set Wb2 = ThisWorkbook

'Boucle sur toutes les feuilles du classeur "S.xls
For i = 1 To 12 'le nombres de feuilles du classeur"
  nl = Range("A65536").End(xlUp).Row + 1 ' Numéro de ligne à écrire
  If nl < 127 Then                        ' Fin du tableau atteint ?
    Wb1.Sheets(i).Cells(nl, 1).Value = NomClient.Value
  End If
Next

'Enregistre les données du classeur "S.XLS"
Wb1.Save
'Ferme le Classeur "S.XLS"
Wb1.Close
End Sub
 
Re : Remplir un tableau ligne par ligne

Bonsoir,

Pour écrire les données les unes en dessous des autres, il faut connaître la derniere cellule utilisée de ta colonne A :

Un moyen classique pour connaître la dernière ligne utilisée :
Dim n&
n = Cells(65536, 1).End(xlUp).Row

--> pour écrire dans la cellule immédiatement en dessous, il suffit d'écrire :

Cells(n+1,1) ="Ici, j'écris dans cette première cellule libre"

Bien entendu, il te faut adapter ce principe basique à ton projet


Bonne soirée
Kotov

Edit : bonsoir Banzai et bravo, tu a été plus courageux que moi, je me suis contenté d'expliquer le principe
 
Dernière édition:
Re : Remplir un tableau ligne par ligne

re: bonjour à Banzai64 ,Kotov ,le forum

Merçi à vous deux pour ces solutions . le temps de teste la macro et de la comprendre

je vous tient au courant . A plus
BR44
 
Re : Remplir un tableau ligne par ligne

re:rebonjour à tous ,

Banzai 69 : J'ai une Erreur de compilation :Erreur de syntaxe
au niveau : nl = Range("A65536").End(xlUp).Row + 1 ' Numéro de ligne à écrire

Après avoir remplacé le "Nl" par le n° de ligne (5 pour le cas prèsent ) .

peut-tu me dire pourquoi ? j'ai essayé de l'ècrire en lettre mais il demande de dèclarer la variable .

Bon si tu me rèpondre se serais sympas en attendant je te dis à plus sur se fil . BR44
 
Re : Remplir un tableau ligne par ligne

Bonjour

Pour déclarer la variable
Dim nl as Long

en remplaçant nl par 5 tu vas écrires toujours sur la même ligne

Wb1.Sheets(i).Cells(5, 1).Value = NomClient.Value

Comment l'écrire en lettre ?

A te lire
 
Re : Remplir un tableau ligne par ligne

re: salut à toi O grand Banzai 69


Merçi pour cette rèponse rapide je reteste et te retient au courant .

Pour rèpondre à ta question : cinq hihihih
 
Re : Remplir un tableau ligne par ligne

Re: Bonjour le forum ,Banzai 69 ,

bon comme prèvue dans mon dernier message j'ai tester ta macros après la declaration de variable .

Dèsoler mais cela fonctionne que hors de la zonne consernée. je m'explique :

le rèsultat s'affiche mais qu'à partir de la ligne 130 ,la fin de mon tableau est elle à la ligne 129 et je voudrais que cela s'affiche entre les 4 et 127 .

j'ai essayè de la modifier sans succès . Si ta as un solution je suis prenneur .

Dans l'attente d'une rèponse je te dis à plus sur se fil . BR44
 
Re : Remplir un tableau ligne par ligne

Re: Rebonjour Bonzai69,le forum


en rèponse je te joint un dossier contenant le dossier client et le dossier de destination .

pour les èlèments à entrer trouve un truc au hasard indeme pour la ref client .

j'ai reduit le fichier de destination à 3 feuille pour des raisons de poids il faudras donc modifier le program pour cette configuration .


Voilà te souhaitant bonne resception je te dis merçi et à bientôt sur se fil.

BR44
 

Pièces jointes

Re : Remplir un tableau ligne par ligne

Re: Bonsoir BANSAI 69,le forum ,


Suite à ton dernier message et aprés de nombreuses tentatatives je te mets au courants .

Bon à première vu le programe fonctionne sauf que rien ne s'affiche dans la plage de destination .

Je m'explique : lors de l'execution les ètapes suivantes s'effectues :

1 / l'ouverture du classeur "S.xls "
2/ Il semble que la copie se face mais pas le collage dans le classeur"S.XLS"
3/la fermeture du classeur "S.xls"

Mais il n'y a pas de résultat d'afficher dans les cellules consernées .

Le programe ne me signal aucune alerte .

Pour moi c'est un myster ? ? ? ?

Si tu vois une solution n'hèsite pas .😕


Je tient à te remercier pour ta patiences et pour ton aide je te dis à bientôt sur se fil .

Br44
 
Re : Remplir un tableau ligne par ligne

Re: Bonjour Banzai 64, le forum ,


Un grand merçi pour cette nouvelle version qui fonctionne .

j'aimerais que tu me donne quelques explications sur tas macros afin que je comprenne bien principe de fonctionnement .

J'aurais voulus savoir aussi si il est possible de rajouter une condition en cas où le nombres de clients depasserait la 127 ème ligne où faudra-t-il que je modifie simplement la macro à ce moment là ?

Bon je te dis de nouveaux merçi pour tout peut-être à bientôt sur ce fil ou sur le forum .
Br44
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…