Bonjour Bonjour,
Je pense effectivement ne pas être très clair,
Concernant ces deux lignes de conde, ce sont deux lignes qui me permettent de copier la ligne de données qui étaient dans un autre classeur,
Une fois une ligne copiée, je veux la décaller sur la droite afin de remplir le nouvel emplacement par un chiffre.
Mais je rencontre à ce moment le problème que j'ai expliqué au départ.
Je te remercie pour le :
Cells(ActiveCell.Row,1).Select
Il me parrait compliquer d'envoyer le fichier, puisque je fais appelle à un .xlt
c'est peut etre un peu long mais j'ai essayé d'épurer et d'expliquer
Le principe est le suivant : Le code va chercher dans une 'Grande bibliothèque des articles choisis par l'utilisateur et va les copier dans un nouveau classeur afin d'en faire une bibliotheque plus restreinte.
Nous sommes dans un userform ou l on a demandé le nom du classeur a l utilisateur et si celui ci clique sur ok il se crée le classeur avec les articles. voici le code
Dim nom As String
Private Sub CommandButton1_Click()
If Creerclasseur.TextBox1.Text <> '' Then
Dim Mypath As String
Mypath = CurDir
Unload Me
'Créer un nouveau classeur
Workbooks.Add Template:= _
'C:\\Program Files\\MSOffice\\Modèles\\ModèlepourDQEBPU.xlt'
'
Sheets('Biblio').Select
nom = TextBox1.Text
'Donne le nom au classeur
ActiveWorkbook.SaveAs ('NOUVEAU DQE BPU')
Mypath = CurDir
MsgBox 'A été enregistré dans' & Mypath
'remplit la bilio courante à partir de la grande biblio
Dim ligne As Integer
Dim colonne As Integer
Dim ws As Worksheet
Dim BIBsource As Range
Dim BIBdest As Range
'Selectionner la grande biblio
Workbooks('TestDED30.xls').Activate
'Atteindre la colone de zone de test de chaque chapitre.
For Each ws In Sheets
Sheets(ws.Name).Select
Range('D2').Select
'Test pour savoir si l'article a été selectionné
While ActiveCell.Value <> 'FIN'
If ActiveCell <> '' Then
'Enregistrer l'adresse complete de la cellule
ligne = ActiveCell.row
colonne = ActiveCell.Column
'Enregistrer la ligne
Set BIBsource = ActiveCell.EntireRow
'Atteindre la place libre de la feuille Biblio du classeur & nom
Workbooks('NOUVEAU DQE BPU.xls').Activate
Worksheets('Biblio').Select
Range('A1').Select
While ActiveCell <> ''
ActiveCell.Offset(1, 0).Select
Wend
'Copier la ligne
Set BIBdest = ActiveCell.EntireRow
BIBdest = BIBsource.Value
'décaler la ligne
While ActiveCell.Column <> 1
ActiveCell.Offset(0, -1).Select
Wend
Selection.Insert Shift:=xlToRight #############
While ActiveCell.Column <> 1
ActiveCell.Offset(0, -1).Select
Wend
ActiveCell.Value = '*'
'Retourner à la cellule suivante du chapitre en cours du classeur principal
Workbooks('TestDED30.xls').Activate
Worksheets(ws.Name).Select
Cells(ligne + 1, colonne).Select
Else
ActiveCell.Offset(1, 0).Select
End If
Wend
Next ws
Workbooks('NOUVEAU DQE BPU.xls').Activate
ActiveWorkbook.SaveAs (nom)
Kill 'NOUVEAU DQE BPU.xls'
Else
MsgBox 'Veuillez renseigner toutes les cases'
End If
End Sub
Private Sub UserForm_Click()
End Sub
Merci d'avoir lu jusque là
J'ai remplacé la ligne avec les dièses par le code de My dear friend et ça n a pas marché.