insertion colonne et codage VBA - VB/VBA/VBS - Programmation
Marsh Posté le 19-09-2020 à 09:12:00
ouai, t'est aussi un peut novice dans l'utilisation du forum.
tu aura sans doute largement plus de réponse en demandant dans la partie Programmation du forum plutôt que la partie Hardware
Marsh Posté le 19-09-2020 à 11:29:55
Quand tu n’as pas d’idée en vba, enregistre ce que tu veux faire en macro Puis regarde le code source. Et ensuite adapte.
Marsh Posté le 19-09-2020 à 12:18:35
Ce sujet a été déplacé de la catégorie Hardware vers la categorie Programmation par TotalRecall
Marsh Posté le 19-09-2020 à 09:09:43
Bonjour à tous,
je suis novice en codage vba... j'ai actuellement une base de données excel avec plusieurs onglets que j'ai réussi à consolider grâce à quelques tutos et lecture ... par contre lorsque la consolidation est faite, certaines en-tête ne sont pas dans le même style (je les ai mis en rouge dans mon ficher que je vous joindrai si j'y arrive ), en plus de cela, j'ai la première en-tête qui se répète juste dessous de celui que j'ai crée sur l'onglet VBA.. (je sais pas si je me suis bien exprimée ). Pouvez-vous me dire pourquoi cela fait ça ?
deuxième question : je souhaite insérer 3 colonnes entre C et D dans le fichier consolidation pour que cela se fasse de manière simultanée dans les autres onglets, j'ai réussi à en insérer qu'une ! Quand j'essaie de ne pas mettre de numéro de colonne, cela ne fonctionne pas. Comment faire ?
je vous joins déjà le code que j'ai utilisé, j'ai peut être fait une erreur quelque part.
Option Explicit
'*******************************
'procédure permettant la consolidation
'de plusieurs données
'*************************************
'Déclaration des variables
Dim I As Integer, J As Integer
Dim DerniereLigne As Integer
Dim LastRowconsolidation As Integer
'Procédure permettant d'effacer toutes les données de la feuille consolidation
Sub effacedonnées()
Worksheets("consolidation" ).Select
Rows("6:1000000" ).Select
Selection.Clear
Range("A6" ).Select
End Sub
'Procédure permettant la consolidation des feuilles du classeur
Sub consolider()
Dim C As Worksheet
Dim J As Byte
Dim I As Integer
Dim O As Worksheet
Dim DLO As Integer
Dim DLC As Integer
Application.ScreenUpdating = False
effacedonnées
Set C = Worksheets("Consolidation" )
For J = 1 To 7
Set O = Worksheets(J)
DLO = O.Cells(Application.Rows.Count, "A" ).End(xlUp).Row
For I = 1 To DLO
DLC = C.Cells(Application.Rows.Count, "A" ).End(xlUp).Row + 1
O.Rows(I).Copy C.Cells(DLC, "A" )
Next I
O.Columns(4).Insert Shift:=xlToRight
Next J
Application.ScreenUpdating = True
MsgBox "La consolidation est terminée...", vbOKOnly + vbInformation, "Information"
End Sub
J'espère que quelqu'un pourrait m'aider
Merci
Ida67
Apprentie VBA