Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/11/2011, 14h04   #1
Invité de passage
 
Homme romain romain Angelras
Étudiant
Inscription : novembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Nom : Homme romain romain Angelras
Localisation : France, Gard (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2011
Messages : 3
Points : 0
Points : 0
Par défaut Décaler de colonnes jusqu'à une vide

bonjour,
je suis complètement débutant dans le langage VBA.
j'ai créé un formulaire avec des text box qui remplissent une colonne dans une feuille, cependant je voudrai ne pas écraser les données contenu dans la colonne a chaque fois que je rempli mon formulaire.
je chercherai un fonction qui quand j'ouvre mon formulaire décale d'une colonne a droite tant que la colonne pour enregistrer est pleine .

en espérant être clair merci de votre aide
voici un morceau de mon code:

Code :
1
2
3
4
5
6
7
8
9
10
11
Private Sub CommandButton1_Click()
 
Sheets("Feuil1").Range("C1").Value = TextBox1.Value
Sheets("Feuil1").Range("C2").Value = TextBox3.Value
Sheets("Feuil1").Range("C3").Value = TextBox2.Value
Sheets("Feuil1").Range("C4").Value = TextBox4.Value
Sheets("Feuil1").Range("C5").Value = TextBox5.Value
Sheets("Feuil1").Range("C6").Value = TextBox6.Value
Sheets("Feuil1").Range("C7").Value = TextBox7.Value
Sheets("Feuil1").Range("C10").Value = "x"
End Sub
VBA-Romix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 14h23   #2
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
bonjour

Une piste

http://www.developpez.net/forums/d45...gnees-feuille/


bon courage
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 14h31   #3
Expert Confirmé Sénior
 
Homme Daniel
aucune
Inscription : septembre 2011
Messages : 2 004
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : aucune

Informations forums :
Inscription : septembre 2011
Messages : 2 004
Points : 4 037
Points : 4 037
Bonjour,

Essaie :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub CommandButton1_Click()
Dim Col As Integer
With Sheets("Feuil1")
    Col = .Cells(1, .Columns.Count).End(xlToLeft).Column
    If Col < 3 Then Col = 3
    .Cells(1, Col).Value = TextBox1.Value
    .Cells(2, Col).Value = TextBox3.Value
    .Cells(3, Col).Value = TextBox2.Value
    .Cells(4, Col).Value = TextBox4.Value
    .Cells(5, Col).Value = TextBox5.Value
    .Cells(6, Col).Value = TextBox6.Value
    .Cells(7, Col).Value = TextBox7.Value
    .Cells(10, Col).Value = "x"
End With
End Sub
__________________
Cordialement.

Daniel

Citation:
La plus perdue de toutes les journées est celle où l'on n'a pas ri.
Chamfort
Daniel.C est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 15h02   #4
Invité de passage
 
Homme romain romain Angelras
Étudiant
Inscription : novembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Nom : Homme romain romain Angelras
Localisation : France, Gard (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2011
Messages : 3
Points : 0
Points : 0
merci,
mais ça ne marche pas encore, quand je clique sur mon bouton cela enregistre bien mais en écrasant l'ancien enregistrement .
VBA-Romix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 15h08   #5
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
Dans le code de Daniel.C

remplace
Code :
1
2
    Col = .Cells(1, .Columns.Count).End(xlToLeft).Column
    If Col < 3 Then Col = 3
par
Code :
    Col = .Cells(1, .Columns.Count).End(xlToLeft).Column+1
tu dis

edit: ce coup ci gillé pijaku
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 03/11/2011, 15h08   #6
Membre éprouvé
 
Homme Franck PRESSE
Inscription : août 2010
Messages : 202
Détails du profil
Informations personnelles :
Nom : Homme Franck PRESSE
Âge : 38
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : août 2010
Messages : 202
Points : 444
Points : 444
Bonjour tout le monde,

En reprenant le code de Daniel, change juste cette ligne :
Code :
Col = .Cells(1, .Columns.Count).End(xlToLeft).Column
à remplacer par :
Code :
Col = .Cells(1, .Columns.Count).End(xlToLeft).Column + 1
en effet, .Cells(1, .Columns.Count).End(xlToLeft).Column renvoie le numéro de la dernière colonne remplie, pas la première vide... Donc +1!
Bonne journée
__________________
Cordialement,
Franck P.


Ps : n'oubliez pas de placer vos posts comme "résolus" () si tel est le cas...
pijaku est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 03/11/2011, 18h53   #7
Invité de passage
 
Homme romain romain Angelras
Étudiant
Inscription : novembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Nom : Homme romain romain Angelras
Localisation : France, Gard (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2011
Messages : 3
Points : 0
Points : 0
merci bop ça marche super !
VBA-Romix est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h07.


 
 
 
 
Partenaires

Hébergement Web