aide Finalisation macro

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pledger

XLDnaute Junior
Bonsoir le forum,

Je vous contact car j'ai une macro qui plante , je ne trouve pas l'erreur.

La voici :

Code:
Public premier As Boolean

Sub Macro12()
'
' Macro12 Macro
'
' Touche de raccourci du clavier: Ctrl+n
On Error Resume Next

    Dim wb As Workbook
    
    For Each wb In Workbooks
    
        If wb.Name Like "Analyse*" Then
        
            wb.Sheets("Feuil1").Select
            wb.Sheets("Feuil1").Move Before:=Sheets(1)
            wb.Sheets("Concaténation").Select
            
        For i = 1 To wb.Sheets.Count
        
        
        wb.Sheets("Concaténation").Select
         Selection.wb.Sheets(i).Range("a1:a65536").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
         
        Next i
         
        Columns("A:A").Select
        Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
        Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove

            
        End If
    
        If premier = False Then
            monID = 0
        End If
            j = 1
            k = 1
            
            derniereLigne = wb.Sheets("Feuil1").Range("B65536").End(xlUp).Row
                
        For i = 1 To derniereLigne
            If wb.Sheets(1).Cells(i, 1).Value <> "" Then
                monID = monID + 1
                valeur = Sheets("Feuil1").Cells(i, 1).Value
                wb.Sheets("Concaténation").Cells(j, 1).Value = monID
                wb.Sheets("Concaténation").Cells(j, 2).Value = Sheets("Feuil1").Cells(i, 1).Value
                j = j + 1
            End If
            
            wb.Sheets("Feuil2").Cells(k, 1).Value = monID
            wb.Sheets("Feuil2").Cells(k, 2).Value = Sheets("Feuil1").Cells(i, 2).Value
            k = k + 1
        Next
        
        wb.Sheets("Concaténation").Name = "Danger"
        wb.Sheets("Feuil2").Name = "Mesure"
      
       
    Next wb
On Error GoTo 0
End Sub

Elle fonctionne mais me crée 2 colonnes ( je ne sais pas pourquoi )
Et la suppression des cellules ne marche pas

Pourriez vous m'aider ?
 
Re : aide Finalisation macro

Bonsoir,

Peut être ici :

VB:
            ' derniereLigne = wb.Sheets("Feuil1").Range("B65536").End(xlUp).Row

            derniereLigne = wb.Sheets("Feuil1").Range("A65536").End(xlUp).Row
                 
        For i = 1 To derniereLigne
 la derniere ligne est a tetser sur la colonne A car votre condition est sur la premiere cellule :

If wb.Sheets(1).Cells(i, 1).Value <> "" Then     ' soit A1 = Cells(i, 1) ici i = 1

' ****************************************************************************

' ici c'est pas la bonne commande / .SpecialCells(xlCellTypeBlanks).
'Range("a1:a65536").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
' Supprime toute les ligne selectionné
Range("a1:a65536").EntireRow.Delete
' supprime tous le contenu de la cellule y compris format
Range("a1:a65536").Clear
' supprime que le contenu de la valeur de la cellule / le format est conservé
Range("a1:a65536").ClearContents
laurent
 
Dernière édition:
Re : aide Finalisation macro

[/HTML]bonsoir Laurent,

Je viens juste de résoudre le problème avec ceci :
Code:
        For i = 1 To wb.Sheets("Concaténation").Count
        wb.Sheets(i).Select
        Range("a1:a65536").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Next i

Je viens de constater deux autre soucis :

Le premier , j'ai ma feuil1 qui est copié coller en feuil1(1)
Le deuxième : la macro ne s’exécute que partiellement dans le deuxième fichier ( en réaltité la feuil 1 est supprimé mais rien d'autre)
 
Re : aide Finalisation macro

Bonjour,

En faite la macro est mal construite. ont peux essayer quelque choses vous faite :

le fichier de départ avec les onglets leur nom est renseignement d'origine.

le fichier d'arriver tel qu'il dois être. avec nom d'onglet et tous les champs remplis (en noir ce qui change pas par arpport au premier et en rouge ceux qui change)

sans aucune macro = je compare est je refais votre macro

laurent
 
Re : aide Finalisation macro

JBonsoir pledger,

je suis pas dans la mesure de vous aider, je comprend pas je suis désoler j'ai essayer, en faite ces le début vers la fin (le programe je sais le faire) vous avez une idée pour être plus caliere et avoir plus de détail.

laurent
 
Re : aide Finalisation macro

Je place la feuille concaténation en deuxième position
Ensuite dans la feuille concaténation je supprimes les lignes vide
Puis je crée 2 colonnes en B et C dans la feuille concaténation.

Ensuite j'arrive même pas a expliquer moi même tellement c compliqué
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
708
Réponses
8
Affichages
270
Réponses
4
Affichages
581
Réponses
2
Affichages
78
Réponses
8
Affichages
651
Réponses
2
Affichages
427
  • Question Question
Microsoft 365 Excel VBA
Réponses
5
Affichages
465
Réponses
10
Affichages
533
Réponses
18
Affichages
428
Réponses
5
Affichages
478
Retour