Problème de copie de cellules

  • Initiateur de la discussion Initiateur de la discussion Boonichou
  • Date de début Date de début

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 !

B

Boonichou

Guest
Bonjour!

J'ai un problème avec des macros apparemment toute simples:

Ma permière macro, par l'intermédiaire d'un bouton, copie une plage de cellule:

Code:
Sub Copier()

On Error Resume Next

Dim a As Long
Dim b As Long
Dim c As String
Dim d As Long
Dim e As Long

c = InputBox("Quel est le numéro de la colonne à copier? Exemple: colonne A = 1, etc...", "Copie des données", "4")

b = c
Select Case b
Case 1 To 100
    a = 2
    
    d = Cells(65536, b).End(xlUp).Row

e = 2
Do While e <> d
    Select Case Cells(e, b).Value
    Case ""
        Cells(e, b).Select
        Selection.Delete
        d = Cells(65536, b).End(xlUp).Row
        e = e - 1
    
    Case Else
    e = e + 1
    
    End Select
Loop

    Do While ActiveSheet.Cells(a, b).Value <> ""
    a = a + 1
    Loop

    ActiveSheet.Range(Cells(2, b), Cells(a - 1, b)).Select
    Selection.Copy

Case Else
    Exit Sub

End Select

CommandBars("CNE").Controls("Coller").Enabled = True

End Sub


Ensuite je veux faire une deuxieme macro pour que cette plage copiée soit collée à un endroit précis quand j'appuie sur le bouton qui est rendu "cliquable" à la fin de la première macro.

Code:
Sub Coller()

On Error Resume Next

Dim a As Long
Dim b As Long

a = Cells(65536, 2).End(xlUp).Row

Range(Cells(33, 2), Cells(a, 2)).Select
Selection.ClearContents

Range(Cells(33, 2)).Select
ActiveSheet.Paste

CommandBars("CNE").Controls("Coller").Enabled = False

End Sub

Mais quand j'execute la deuxieme macro, j'ai une erreur: "La méthode Range de l'objet global a échoué " sur la ligne "Range(Cells(33, 2)).Select"

Pourriez vous m'aider à régler ce problème?
 
Re : Problème de copie de cellules

Bonjour Pierrejean et merci pour le dérangement!

Je viens d'essayer avec .Adress, ça marche toujours pas, mais l'erreur est différente:
"La méthode Paste de la classe Worksheet a échouée"

C'est fou, pourtant c'est le code donnée par l'enregistreur de macro... je comprends vraiment pas d'où peut provenir ce problème, pourtant basique!!
 
Re : Problème de copie de cellules

Salut Boonichou,

Ta macro de départ est normalement bonne, sauf que tu fais
Code:
Selection.ClearContents
avant ton collage !

Donc la sélection qui a été copiée, n'existe plus !
Et la macro t'envoie un message d'erreur.

Code:
Sub Coller()
On Error Resume Next
Dim a As Long, b As Long
a = Cells(65536, 2).End(xlUp).Row
' Coller les valeurs ICI
Cells(33, 2).Select
ActiveSheet.Paste
' Effacer le restant ICI
'Range(Cells(33, 2), Cells(a, 2)).Select
'Selection.ClearContents
CommandBars("CNE").Controls("Coller").Enabled = False
End Sub
 
Re : Problème de copie de cellules

Yeees!!!

Merci beaucoup!!!

En fait je croyais que ma selection.clearcontents s'appliquait aux cellules selectionnées juste avant et non pas à ce qui avait été copié!!!

Merci encore!!
 
Dernière modification par un modérateur:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
176
Réponses
5
Affichages
910
Retour