Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
47ffe6f4$0$903$ba4acef3@news.orange.fr...
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
uA5DGVCnIHA.1680@TK2MSFTNGP06.phx.gbl...
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
47ffe6f4$0$903$ba4acef3@news.orange.fr...
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où il
se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où il
se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
uA5DGVCnIHA.1680@TK2MSFTNGP06.phx.gbl...
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
47ffe6f4$0$903$ba4acef3@news.orange.fr...
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où il
se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
uA5DGVCnIHA.1680@TK2MSFTNGP06.phx.gbl...
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
47ffe6f4$0$903$ba4acef3@news.orange.fr...
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout me
paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" a écrit dans le message de news:
48013967$0$875$Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
48013967$0$875$ba4acef3@news.orange.fr...
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
uA5DGVCnIHA.1680@TK2MSFTNGP06.phx.gbl...
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
47ffe6f4$0$903$ba4acef3@news.orange.fr...
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" a écrit dans le message de news:
48013967$0$875$Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Je ne pense pas que le presse-papier soit vidé car si j'annule l'erreur et
que je fais "collé" manuellement, alors ma zone se déplace bien.
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Cela ne change rien.
La feuille n'est pas non plus protégé.
Merci de votre aide
Michel
"Daniel.C" a écrit dans le message de news:Si tu fais un copy manuel, quelle est la séquence d'exécution des macros
?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" a écrit dans le message de news:
48013967$0$875$Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir
où il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Je ne pense pas que le presse-papier soit vidé car si j'annule l'erreur et
que je fais "collé" manuellement, alors ma zone se déplace bien.
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Cela ne change rien.
La feuille n'est pas non plus protégé.
Merci de votre aide
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
OYI0CLUnIHA.536@TK2MSFTNGP06.phx.gbl...
Si tu fais un copy manuel, quelle est la séquence d'exécution des macros
?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
48013967$0$875$ba4acef3@news.orange.fr...
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir
où il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
uA5DGVCnIHA.1680@TK2MSFTNGP06.phx.gbl...
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
47ffe6f4$0$903$ba4acef3@news.orange.fr...
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Je ne pense pas que le presse-papier soit vidé car si j'annule l'erreur et
que je fais "collé" manuellement, alors ma zone se déplace bien.
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Cela ne change rien.
La feuille n'est pas non plus protégé.
Merci de votre aide
Michel
"Daniel.C" a écrit dans le message de news:Si tu fais un copy manuel, quelle est la séquence d'exécution des macros
?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" a écrit dans le message de news:
48013967$0$875$Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir
où il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Je ne pense pas que le presse-papier soit vidé car si j'annule l'erreur et
que je fais "collé" manuellement, alors ma zone se déplace bien.
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Cela ne change rien.
La feuille n'est pas non plus protégé.
Merci de votre aide
Michel
"Daniel.C" a écrit dans le message de news:Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" a écrit dans le message de news:
48013967$0$875$Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Je ne pense pas que le presse-papier soit vidé car si j'annule l'erreur et
que je fais "collé" manuellement, alors ma zone se déplace bien.
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Cela ne change rien.
La feuille n'est pas non plus protégé.
Merci de votre aide
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
OYI0CLUnIHA.536@TK2MSFTNGP06.phx.gbl...
Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
48013967$0$875$ba4acef3@news.orange.fr...
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
uA5DGVCnIHA.1680@TK2MSFTNGP06.phx.gbl...
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
47ffe6f4$0$903$ba4acef3@news.orange.fr...
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Je ne pense pas que le presse-papier soit vidé car si j'annule l'erreur et
que je fais "collé" manuellement, alors ma zone se déplace bien.
J'ai essayé de spécifier la feuiile comme ci-après:
Set Zone = Sheets(3).Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Cela ne change rien.
La feuille n'est pas non plus protégé.
Merci de votre aide
Michel
"Daniel.C" a écrit dans le message de news:Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" a écrit dans le message de news:
48013967$0$875$Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur =
Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" a écrit dans le message de news:
48013967$0$875$Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur >> Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
48013967$0$875$ba4acef3@news.orange.fr...
Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur >> Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" <dZZZcolardelle@free.fr> a écrit dans le message de news:
uA5DGVCnIHA.1680@TK2MSFTNGP06.phx.gbl...
Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" <mor.mic@wanadoo.fr> a écrit dans le message de news:
47ffe6f4$0$903$ba4acef3@news.orange.fr...
Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel
Si tu fais un copy manuel, quelle est la séquence d'exécution des macros ?
Il est vraisemblable que le presse-papiers est vidé par une macro.
Daniel
"Michel MORICE" a écrit dans le message de news:
48013967$0$875$Bonsoir Daniel
Zone un bien un objet de type Range.
J'ai essayé la copie sur une cellule ou sur un range de même taille, le
résultat est le même.
J'ai aussi essayé Selection. PasteSpecial toujours la même erreur.
Je dois avoir un vrai problème de compréhension mais j'aimerais savoir où
il se situe.
Ci-après mon code complet, si vous avez une idée.
Dim EnCours As Boolean
Dim xDebut As Integer, xFin As Integer
Dim x As Integer, y As Integer, Couleur As Integer
Dim Zone As Range
'***********************************
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim Fin As Boolean
If Target.Interior.ColorIndex <> xlColorIndexNone Then
x = Target.Row: y = Target.Column: Couleur >> Target.Interior.ColorIndex
Fin = False
Do
If Cells(x - 1, y).Interior.ColorIndex = Couleur Then
x = x - 1
Else
xDebut = x
Fin = True
End If
Loop Until Fin
Fin = False
Do
If Cells(x + 1, y).Interior.ColorIndex = Couleur Then
x = x + 1
Else
xFin = x
Fin = True
End If
Loop Until Fin
Range(Cells(xDebut, y), Cells(xFin, y)).Cut
EnCours = True
End If
Cancel = True
End Sub
'**********************************
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If EnCours Then
Set Zone = Range(Cells(Target.Row, y), Cells(Target.Row + xFin -
xDebut, y))
Zone.Select
Selection.PasteSpecial Paste:=xlPasteAll '******* génère
l'erreur "La méthode PasteSpecial de la classe Range a échoué".
End If
End Sub
Merci
Michel
"Daniel.C" a écrit dans le message de news:Bonsoir.
A tout hasard :
Selection.PasteSpecial Paste:=xlPasteAll
sauf si ce n'est pas cela que tu veux faire. Que représente Zone ?
A-t-elle la même taille que la zone copiée ?
Cordialement.
Daniel
"Michel MORICE" a écrit dans le message de news:
47ffe6f4$0$903$Bonsoir ou bonjour à tous.
En VBA sur Excel 2000
Malgré l'aide en ligne et l'assistant aux syntaxes, je n'arrive pas à
faire fonctionner la copie d'une zone dans une feuille alors que tout
me paraît simple et conforme.
Je place dans le presse-papier une zone de 10 cellules par exemple.
Je selectionne une nouvelle cellule.
Au moment d'exécuter la ligne suivante, cela se plante:
Zone.PasteSpecial Paste:=xlPasteAll
Avec le message suivant:
La méthode PasteSpecial de la classe Range a échoué.
Ayant épuisé toutes mes cartouches, si quelqu'un pouvait éclairer ma
lenterne nocture.
Merci
Michel