aide Finalisation macro

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 ?
 

laurent950

XLDnaute Impliqué
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:

pledger

XLDnaute Junior
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)
 

laurent950

XLDnaute Impliqué
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
 

laurent950

XLDnaute Impliqué
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
 

pledger

XLDnaute Junior
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é
 

laurent950

XLDnaute Impliqué
Re : aide Finalisation macro

Je suis désolé, la je sais pas faire j'ai des limites dans le sens je suis pas un génie, mais je vous aide sans soucis si je peux

laurent
 
Dernière édition:

laurent950

XLDnaute Impliqué
Re : aide Finalisation macro

Vous voulez copier la feuil1 est la renomer Concaténation

Sheets("Feuil1").Select
Sheets("Feuil1").Move Before:=Sheets(1)
Sheets("Concaténation").Select
 

Discussions similaires


Haut Bas