Erreur aléatoire

Bonjour à tous,

Je rencontre un problème avec mon fichier excel . En effet, j'ai une macro ( nommée valcaisstop) qui copie une plage de cellules ( A12;F29) dans la feuille "MENU" , et l'insère dans la feuille " Tableau caissières ", à la ligne 6 du tableau . La même macro actualise ensuite un TCD dans la feuille "récap caissière " et revient à la feuille MENU. Le problème est que des bugs aléatoires surviennent lorsque j’appuie sur le premier bouton nommé "validé" qui enclenche la macro. Cette erreur est fréquente et plante complètement le fichier. souvent ça passe , d'autres fois non . Le déboggeur indique que l'erreur se trouve à ce niveau : Sheets("TABLEAU CAISSIERE").Rows("6:6").Insert Shift:=xlDown

Voici la macro :

Sub ValCaissetop()

  If MsgBox("confirmez-vous l'ajout des données relatives aux caissières ?", _
    vbYesNo, "confirmation") = vbNo Then Exit Sub

  Sheets("MENU").Range("A12:F29").Copy
  Sheets("TABLEAU CAISSIERE").Rows("6:6").Insert Shift:=xlDown
  Application.CutCopyMode = False
  Sheets("RECAP CAISSIERES").PivotTables("Tableau croisé dynamique1").PivotCache.Refresh
  Sheets("MENU").Range("A11").Select
End Sub

j'ai mis le fichier en pièce jointe ! prière de m'aider là dessus . Merci.

Bonjour,

De ce que je comprends de la chose.

Cdlt.

Public Sub ValCaissetop()
Dim ws As Worksheet, lo As ListObject, pt As PivotTable
Dim rCell As Range
Const RNG As String = "A12:F29"

    If MsgBox("confirmez-vous l'ajout des données relatives aux caissières ?", vbYesNo, "Confirmation") = vbYes Then

        Set ws = Worksheets("MENU")
        Set lo = Worksheets("TABLEAU CAISSIERE").ListObjects(1)
        Set pt = Worksheets("RECAP CAISSIERES").PivotTables(1)

        With lo
            If .InsertRowRange Is Nothing Then
                Set rCell = .HeaderRowRange.Cells(1).Offset(.ListRows.Count + 1)
            Else
                Set rCell = .InsertRowRange.Cells(1)
            End If

        End With

        ws.Range(RNG).Copy
        rCell.PasteSpecial xlPasteValuesAndNumberFormats
        Application.CutCopyMode = False

        pt.PivotCache.Refresh

        With ws
            .Activate
            .Cells(1).Select
        End With

    End If

End Sub

Bonjour Jean-Eric,

Merci de ton aide. Je vais l'essayer et voir.

Bonjour Jean-Eric,

ça passe super bien , pas de bugs ! Merci.

Rechercher des sujets similaires à "erreur aleatoire"