Procédure PasteSpecial - SOS Debogage

Bonjour à tout le Forum,

J'ai fait quelques recherches et avec l'aide en ligne de notre communauté XLNaute ci et là, j'ai pu réalisé le programme ci-joint.

Mais, depuis 2 jours, il plante sur une ligne relative à la procédure de collage spéciale Valeurs. Et oui, c'est le problème justement de nous autres qui copions/collons des codes sans tout comprendre...

En tout cas, j'ai besoin de votre aide, car je sais pas à quel niveau est le problème, surtout que le code s'exécute partiellement!

Voic le code et le fichier joint:

Sub CopierColler()
Dim wsh As Worksheet, derlig&, xrg As Range

Application.ScreenUpdating = False
Worksheets("Centralisation").Range("A2:H" & Rows.Count).ClearContents

    For Each wsh In ThisWorkbook.Worksheets
        If IsDate("1-" & wsh.Name) Then
            If Len(wsh.Range("A3")) > 0 Then
                With Worksheets("Centralisation")
                    derlig = wsh.Cells(Rows.Count, "A").End(xlUp).Row
                    If derlig > 2 Then
                        Set xrg = .Cells(Rows.Count, "B").End(xlUp).Offset(1)
                        wsh.Range("A3:G" & derlig).Copy xrg
                        xrg.PasteSpecial Paste:=xlPasteValues[/color]  ' C'est ici que ça bugue
                        xrg.Offset(, -1).Resize(wsh.Range("A8:G" & derlig).Rows.Count) = Month("1-" & wsh.Name)
                    End If
                End With
            End If
        End If
    Next wsh

End Sub

Merci par avance!

Jeanba

Bonjour

Essaie comme ça :

...
    wsh.Range("A3:G" & derlig).Copy
    xrg.PasteSpecial Paste:=xlPasteValues
...

Résultat ?

Bye !

Bonjour gmb,

C'était effectivement ça le problème (le fait de placer la variable après copy)

Merci beaucoup!

Je rencontre d'autres soucis. Mais, conformément à la charte du forum, je fais d'abord des recherches.

Si au bout d'un moment je ne parviesn pas trouver de solution, je reviendrai vers le forum..

Merci encore!

Jeanba

Re bonsoir gmb,

Je profite de te soumettre encore ce code, je sais pas ce que j'ai ce soir mais je vois que dalle...

L'objectif, sélectionner la feuille "Centralisation" et exécuter tout mon code que PasteSpecial que là dessus.

Là encore, il bloque et suis incable, en bon débutant, de voir à quel niveau...

Private Sub USF05_CommandButton3_Click()
Unload Me
Application.ScreenUpdating = False
Worksheets("Centralisation").Select   'Il bloque à ce niveau avec ce message d'erreur dans le fichier joint...
    With Selection
        .Visible = True
        Call JnalGeneral
        Call ImprimerFeuilleActive
    End With
End Sub

Merci beaucoup...

capture

Essaie comme ça :

...
Sheets("Centralisation").Select 
...

Résutat ?

Bye !

Résultat:

capture 2

"Erreur d'exécution 438

Propriété ou méthode non gérée par cet objet!"

NB: Cette fois-ci, il bloque sur la ligne ".visible = True"

C'est bon, j'ai eu la réponse sur un autre site!

Le souci venait de ce que je demandais la sélection de la feuille masquée! Or, il faut que ma feuille soit en Visible = True pour pouvoir continuer toutes les procédures désirées..

Merci pour tout et à bientôt!

Jeanba

Rechercher des sujets similaires à "procedure pastespecial sos debogage"