insertion colonne et codage VBA

insertion colonne et codage VBA - VB/VBA/VBS - Programmation

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   :ange: ), 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  :)  
 
 
 
 

Reply

Marsh Posté le 19-09-2020 à 09:09:43   

Reply

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


---------------
#mais-chut
Reply

Marsh Posté le 19-09-2020 à 09:15:17    

Merci ! oui novice aussi sur le site :)

Reply

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.


Message édité par jujuf1 le 19-09-2020 à 11:30:08
Reply

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


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed