Décaler colonne
loupti
Messages postés
30
Statut
Membre
-
loupti Messages postés 30 Statut Membre -
loupti Messages postés 30 Statut Membre -
Bonjour,
Je souhaiterai faire une boucle afin de décaler des informations, entrées sur un userform, d'une colonne à chaque fois qu'une nouvelle liste d'information est communiquée.
Actuellement j'ai le code suivant :
Mais à chaque fois qu'on entre une nouvelle liste d'information, cela écrase les informations déja enregistrées sur ma feuille excel.
j'ai trouvé que pour décaler, il faut utiliser la fonction offset et pour sélectionner une colonne, la fonction Range (A").select ou Colums("A"). Select
Mais ce que j'aimerai c'est que la première liste d'information soit mise en colonne A, la seconde en B ....
Je suis débutante sur la programmation, c'est pourquoi je n'arrive pas à réaliser ce que j'aimerai faire ...
Merci d'avance
Cordialement,
loupti
Je souhaiterai faire une boucle afin de décaler des informations, entrées sur un userform, d'une colonne à chaque fois qu'une nouvelle liste d'information est communiquée.
Actuellement j'ai le code suivant :
Private Sub BuOK_Click()
Dim feuille2 As Worksheet
UsfOrigine3 = Me.Name
'on créé la feuille "Information générales du fichier" si elle n'existe pas déjà
Set feuille2 = Creer_Feuil(xlBook, "Presentation Information")
'on y stocke toutes les infos saisies
xlApp.Visible = True
With feuille2
.[A1] = TbSection
.[A2] = TbSeqNumber
.[A3] = TbRevision
.[A4] = CbRevision
.[A5] = TbDate
.[A6] = TbDescription
.[A7] = TbDrawn
.[A8] = TbChecked
.[A9] = TbApproved
End With
'Enregistrement du classeur "Projet" dans répertoir D:\DATA\c.beguin\Documents
xlBook.SaveAs Filename:=monRep & Nom_Proj, FileFormat:=xlExcel8
Unload Me
End Sub
Mais à chaque fois qu'on entre une nouvelle liste d'information, cela écrase les informations déja enregistrées sur ma feuille excel.
j'ai trouvé que pour décaler, il faut utiliser la fonction offset et pour sélectionner une colonne, la fonction Range (A").select ou Colums("A"). Select
Mais ce que j'aimerai c'est que la première liste d'information soit mise en colonne A, la seconde en B ....
Je suis débutante sur la programmation, c'est pourquoi je n'arrive pas à réaliser ce que j'aimerai faire ...
Merci d'avance
Cordialement,
loupti
A voir également:
- Décaler colonne
- Déplacer colonne excel - Guide
- Trier colonne excel - Guide
- Colonne word - Guide
- Formule somme excel colonne - Guide
- Figer colonne excel - Guide
3 réponses
Bonjour Loupti, bonjour le forum,
Peut-être comme ça :
Peut-être comme ça :
Private Sub BuOK_Click()
Dim feuille2 As Worksheet
Dim DEST As Range
UsfOrigine3 = Me.Name
'on créé la feuille "Information générales du fichier" si elle n'existe pas déjà
Set feuille2 = Creer_Feuil(xlBook, "Presentation Information")
'on y stocke toutes les infos saisies
xlApp.Visible = True
With feuille2
Set DEST = IIf(.Range("A1").Value = "", .Range("A1"), .Cells(1, Application.Columns.Count).End(xlToLeft).Offset(0, 1))
DEST.Value = TbSection
DEST.Offset(1, 0).Value = TbSeqNumber
DEST.Offset(2, 0).Value = TbRevision
DEST.Offset(3, 0).Value = CbRevision
DEST.Offset(4, 0).Value = TbDate
DEST.Offset(5, 0).Value = TbDescription
DEST.Offset(6, 0).Value = TbDrawn
DEST.Offset(7, 0).Value = TbChecked
DEST.Offset(8, 0).Value = TbApproved
End With
'Enregistrement du classeur "Projet" dans répertoir D:\DATA\c.beguin\Documents
xlBook.SaveAs Filename:=monRep & Nom_Proj, FileFormat:=xlExcel8
Unload Me
End Sub
Bonjour
à adapter à ton contexte
col est la A° colonne vide
Michel
à adapter à ton contexte
col est la A° colonne vide
With Sheets(2)
col = IIf(Range("A1") = "", 1, .Rows(1).Find("", .Range("A1")).Column)
End With
.cells(1,col)="zaza"
etc
Michel
Merci Michel_m, avec ta proposition de code du coup ça donne quelque chose comme ça ?
Private Sub BuOK_Click()
Dim feuille2 As Worksheet
Dim col as Integer
UsfOrigine3 = Me.Name
'on créé la feuille "Information générales du fichier" si elle n'existe pas déjà
Set feuille2 = Creer_Feuil(xlBook, "Presentation Information")
'on y stocke toutes les infos saisies
xlApp.Visible = True
With feuille2
col = IIf(Range("A1") = "", 1, .Rows(1).Find("", .Range("A1")).Column)
col = IIf(Range("A2") = "", 1, .Rows(1).Find("", .Range("A2")).Column)
col = IIf(Range("A3") = "", 1, .Rows(1).Find("", .Range("A3")).Column)
col = IIf(Range("A4") = "", 1, .Rows(1).Find("", .Range("A4")).Column)
col = IIf(Range("A5") = "", 1, .Rows(1).Find("", .Range("A5")).Column)
col = IIf(Range("A6") = "", 1, .Rows(1).Find("", .Range("A6")).Column)
col = IIf(Range("A7") = "", 1, .Rows(1).Find("", .Range("A7")).Column)
col = IIf(Range("A8") = "", 1, .Rows(1).Find("", .Range("A8")).Column)
col = IIf(Range("A9") = "", 1, .Rows(1).Find("", .Range("A9")).Column)
End With
.cells(1,col)=TbSection
.cells(2,col)=TbSeqNumber.
.cells(3,col)=TbRevision
.cells(4,col)=CbRevision
.cells(5,col)=TbDate
.cells(6,col)=TbDescription
.cells(7,col)=TbDrawn
.cells(8,col)=TbChecked
.cells(1,col)=TbApproved
'Enregistrement du classeur "Projet" dans répertoir D:\DATA\c.beugin\Documents
xlBook.SaveAs Filename:=monRep & Nom_Proj, FileFormat:=xlExcel8
Unload Me
End Sub
Voici le code que j'ai écrit ... J'ai du faire une erreur
Private Sub BuOK_Click()
Dim feuille2 As Worksheet
Dim col As Integer
UsfOrigine3 = Me.Name
'on créé la feuille "Information générales du fichier" si elle n'existe pas déjà
Set feuille2 = Creer_Feuil(xlBook, "Presentation Information")
'on y stocke toutes les infos saisies
xlApp.Visible = True
With feuille2
col = IIf(.Range("A1") = "", 1, .Rows(1).Find("", .Range("A1")).Column)
col = IIf(.Range("A2") = "", 1, .Rows(2).Find("", .Range("A2")).Column)
col = IIf(.Range("A3") = "", 1, .Rows(3).Find("", .Range("A3")).Column)
col = IIf(.Range("A4") = "", 1, .Rows(4).Find("", .Range("A4")).Column)
col = IIf(.Range("A5") = "", 1, .Rows(5).Find("", .Range("A5")).Column)
col = IIf(.Range("A6") = "", 1, .Rows(6).Find("", .Range("A6")).Column)
col = IIf(.Range("A7") = "", 1, .Rows(7).Find("", .Range("A7")).Column)
col = IIf(.Range("A8") = "", 1, .Rows(8).Find("", .Range("A8")).Column)
col = IIf(.Range("A9") = "", 1, .Rows(9).Find("", .Range("A9")).Column)
End With
.Cells(1, col) = TbSection
.Cells(2, col) = TbSeqNumber
.Cells(3, col) = TbRevision
.Cells(4, col) = CbRevision
.Cells(5, col) = TbDate
.Cells(6, col) = TbDescription
.Cells(7, col) = TbDrawn
.Cells(8, col) = TbChecked
.Cells(9, col) = TbApproved
'Enregistrement du classeur "Projet" dans répertoir D:\DATA\c.beugin\Documents
xlBook.SaveAs Filename:=monRep & Nom_Proj, FileFormat:=xlExcel8
Unload Me
End Sub

Set DEST = IIf(.Range("A1").Value = "", .Range("A1"), .Cells(1, Application.Columns.Count).End(xlToLeft).Offset(0, 1))Ma question est surement bête mais que veux dire erreur définie par l'application ou par l'objet ?