Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

La méthode Paste de la classe Worksheet à échoué

2 réponses
Avatar
DC
Bonjour, Excel 2000 sous XP

Voilà, cette macro ci-dessous, fonctionne très bien, jusqu'a la ligne avant
:
ActiveSheet.Paste, ( c'est à dire que les 3 dernières lignes ne
s'éxécutent pas )
et il est dit : " La méthode Paste de la classe Worksheet a échoué ",
Aussi je n'arrive pas à comprendre le pourquoi des choses !
Pourriez-vous me venir en aide svp ? Merci d'avance !
'--------------------------------------------------------------------
Sub Mon_choix()

Sheets("Feuil1").Select
Range("A10").Select
Selection.Copy
Sheets("Devis").Select
Range("Choix").Select
Set Ligne = Application.InputBox(Prompt:="Sélection + OK... Pour
Arrêter = Annuler + Fin...", Title:="Sélection H ou B avec les Flèches",
Default:=ActiveCell.Offset(1, 0).Range("A1").Address, Left:=383, Top:=-66,
Type:=8)
Ligne.Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("A17").Select

End Sub
'-------------------------------------------------------------------
Salutations ! au plaisir de vous lire DC

2 réponses

Avatar
MichDenis
Essaie ceci :


Sub Mon_choix()

Dim Ligne As Variant

On Error Resume Next
With Sheets("Devis")
.Select
.Range("Choix").Select
Set Ligne = Application.InputBox(Prompt:="Sélection + OK...Pour" & _
"Arrêter = Annuler + Fin...", Title:="Sélection H ou B avec les Flèches", _
Default:¬tiveCell.Offset(1, 0).Range("A1").Address, Left:83, Top:=-66, _
Type:=8)
If IsNull(Ligne) = False Then Exit Sub
Sheets("Feuil1").Range("A10").Copy
If Not Ligne Is Nothing Then
With Ligne(1, 1)
.PasteSpecial xlPasteAll
End With
End If
.Range("A17").Select
End With
Application.CutCopyMode = False

End Sub



"DC" a écrit dans le message de news:
45db1f75$0$5088$
Bonjour, Excel 2000 sous XP

Voilà, cette macro ci-dessous, fonctionne très bien, jusqu'a la ligne avant
:
ActiveSheet.Paste, ( c'est à dire que les 3 dernières lignes ne
s'éxécutent pas )
et il est dit : " La méthode Paste de la classe Worksheet a échoué ",
Aussi je n'arrive pas à comprendre le pourquoi des choses !
Pourriez-vous me venir en aide svp ? Merci d'avance !
'--------------------------------------------------------------------
Sub Mon_choix()

Sheets("Feuil1").Select
Range("A10").Select
Selection.Copy
Sheets("Devis").Select
Range("Choix").Select
Set Ligne = Application.InputBox(Prompt:="Sélection + OK... Pour
Arrêter = Annuler + Fin...", Title:="Sélection H ou B avec les Flèches",
Default:¬tiveCell.Offset(1, 0).Range("A1").Address, Left:83, Top:=-66,
Type:=8)
Ligne.Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("A17").Select

End Sub
'-------------------------------------------------------------------
Salutations ! au plaisir de vous lire DC
Avatar
DC
Bonsoir, MichDenis

Merci pour ta réponse positive, j'ai mis un peu de temps à te répondre, mais
c'est tout simplement, que j'ai dù adapter et vu mon niveau, il m'a fallut
un certain temps !
Mais dans le final çà fonctionne exactement comme je l'espérais,
Voici l'adaptation : ( pas très Pro., mais çà fonctionne )
'------------------------------------------------------
Sub Mon_choix()

Dim Ligne As Variant

On Error Resume Next
With Sheets("Devis")
.Select
.Range("Choix").Select
Set Ligne = Application.InputBox(Prompt:="Sélection + OK...Pour" & _
"Arrêter = Annuler + Fin...", Title:="Sélection H ou B avec les
Flèches", _
Default:¬tiveCell.Offset(1, 0).Range("A1").Address, Left:83,
Top:=-66, _
Type:=8)
If IsNull(Ligne) = False Then
Sheets("Feuil1").Range("A10").Copy
End If
If Not Ligne Is Nothing Then
End If

With Ligne(1, 1)
.PasteSpecial xlPasteAll
End With
.Range("A17").Select
End With
Application.CutCopyMode = False

End Sub
'--------------------------------------------------------
Salutations ! un grand MERCI ! DC

"MichDenis" a écrit dans le message de news:
Os%
Essaie ceci :


Sub Mon_choix()

Dim Ligne As Variant

On Error Resume Next
With Sheets("Devis")
.Select
.Range("Choix").Select
Set Ligne = Application.InputBox(Prompt:="Sélection + OK...Pour" & _
"Arrêter = Annuler + Fin...", Title:="Sélection H ou B avec les
Flèches", _
Default:¬tiveCell.Offset(1, 0).Range("A1").Address, Left:83,
Top:=-66, _
Type:=8)
If IsNull(Ligne) = False Then Exit Sub
Sheets("Feuil1").Range("A10").Copy
If Not Ligne Is Nothing Then
With Ligne(1, 1)
.PasteSpecial xlPasteAll
End With
End If
.Range("A17").Select
End With
Application.CutCopyMode = False

End Sub



"DC" a écrit dans le message de news:
45db1f75$0$5088$
Bonjour, Excel 2000 sous XP

Voilà, cette macro ci-dessous, fonctionne très bien, jusqu'a la ligne
avant
:
ActiveSheet.Paste, ( c'est à dire que les 3 dernières lignes ne
s'éxécutent pas )
et il est dit : " La méthode Paste de la classe Worksheet a échoué ",
Aussi je n'arrive pas à comprendre le pourquoi des choses !
Pourriez-vous me venir en aide svp ? Merci d'avance !
'--------------------------------------------------------------------
Sub Mon_choix()

Sheets("Feuil1").Select
Range("A10").Select
Selection.Copy
Sheets("Devis").Select
Range("Choix").Select
Set Ligne = Application.InputBox(Prompt:="Sélection + OK...
Pour
Arrêter = Annuler + Fin...", Title:="Sélection H ou B avec les Flèches",
Default:¬tiveCell.Offset(1, 0).Range("A1").Address, Left:83, Top:=-66,
Type:=8)
Ligne.Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("A17").Select

End Sub
'-------------------------------------------------------------------
Salutations ! au plaisir de vous lire DC