Private Sub Worksheet_Activate

Le
Sunburn
Bonjour,
lorsque je met ma macro dans ma feuille comme ça :
Private Sub Worksheet_Activate()
CopieColleValeur
End Sub

Sub CopieColleValeur()
Sheets("GA14").Columns("A:G").Copy
Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues ',
Operation:=xlNone, SkipBlanks _
:úlse, Transpose:úlse
Application.CutCopyMode = False
Sheets("Ga14PourCycles").Range("G1").ClearContents
End Sub
--
ça plante.
mais quand j'execute ma macro toute seule, ça ne plante pas. pourquoi?
je voudrais que ma macro s'execute à chaque fois que je clic sur l'onglet
"30", même lorsque je vais sur cet onglet par cette procédure :
Merci.YANN
-
Sub CYCLE30()
CopieColleValeur
Dim F As Worksheet
Application.ScreenUpdating = False
ActiveWorkbook.Unprotect 'déprotection du classeur
For Each F In ActiveWorkbook.Worksheets
Select Case F.Name
Case "DA", "GA10", "GA11", "GA12", "GA13", "GA14", _
"30", "30_31", "30_32", "30_33", "30_34", "30_35"
F.Visible = True
F.Protect
Case Else
F.Visible = False
' F.Unprotect
End Select
Next
Sheets("30").Select
ActiveWorkbook.Protect Structure:=True
End Sub
-
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #18481941
Lorsque tu veux copier tes données, pourquoi ne pas préciser
une cellule à partir de laquelle le "coller" doit s'effectuer.

Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues

Remplace par

Sheets("Ga14PourCycles").Range("A1").PasteSpecial xlPasteValues
ou toutes autres cellules que A1. Sauf que tu dois tenir compte
de cette restriction, ce doit être une cellule en ligne 1 puisque tu
as copié dans le presse-papier ta totalité des colonnes.



"Sunburn" discussion :
Bonjour,
lorsque je met ma macro dans ma feuille comme ça :
Private Sub Worksheet_Activate()
CopieColleValeur
End Sub
---
Sub CopieColleValeur()
Sheets("GA14").Columns("A:G").Copy
Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues ',
Operation:=xlNone, SkipBlanks _
:úlse, Transpose:úlse
Application.CutCopyMode = False
Sheets("Ga14PourCycles").Range("G1").ClearContents
End Sub
-----
ça plante.
mais quand j'execute ma macro toute seule, ça ne plante pas. pourquoi?
je voudrais que ma macro s'execute à chaque fois que je clic sur l'onglet
"30", même lorsque je vais sur cet onglet par cette procédure :
Merci.YANN
----
Sub CYCLE30()
CopieColleValeur
Dim F As Worksheet
Application.ScreenUpdating = False
ActiveWorkbook.Unprotect 'déprotection du classeur
For Each F In ActiveWorkbook.Worksheets
Select Case F.Name
Case "DA", "GA10", "GA11", "GA12", "GA13", "GA14", _
"30", "30_31", "30_32", "30_33", "30_34", "30_35"
F.Visible = True
F.Protect
Case Else
F.Visible = False
' F.Unprotect
End Select
Next
Sheets("30").Select
ActiveWorkbook.Protect Structure:=True
End Sub
----
Merguez07
Le #18482111
essaye de remplacer
Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues
par
Sheets("Ga14PourCycles").Cells(1, 1).PasteSpecial Paste:=xlPasteValues

xavier


"Sunburn" groupe de discussion :
Bonjour,
lorsque je met ma macro dans ma feuille comme ça :
Private Sub Worksheet_Activate()
CopieColleValeur
End Sub
---
Sub CopieColleValeur()
Sheets("GA14").Columns("A:G").Copy
Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues ',
Operation:=xlNone, SkipBlanks _
:úlse, Transpose:úlse
Application.CutCopyMode = False
Sheets("Ga14PourCycles").Range("G1").ClearContents
End Sub
-----
ça plante.
mais quand j'execute ma macro toute seule, ça ne plante pas. pourquoi?
je voudrais que ma macro s'execute à chaque fois que je clic sur l'onglet
"30", même lorsque je vais sur cet onglet par cette procédure :
Merci.YANN
----
Sub CYCLE30()
CopieColleValeur
Dim F As Worksheet
Application.ScreenUpdating = False
ActiveWorkbook.Unprotect 'déprotection du classeur
For Each F In ActiveWorkbook.Worksheets
Select Case F.Name
Case "DA", "GA10", "GA11", "GA12", "GA13", "GA14", _
"30", "30_31", "30_32", "30_33", "30_34", "30_35"
F.Visible = True
F.Protect
Case Else
F.Visible = False
' F.Unprotect
End Select
Next
Sheets("30").Select
ActiveWorkbook.Protect Structure:=True
End Sub
----


Sunburn
Le #18482551
merci, et oui ....... trop la tete en l'air !!!

"michdenis" a écrit :

Lorsque tu veux copier tes données, pourquoi ne pas préciser
une cellule à partir de laquelle le "coller" doit s'effectuer.

Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues

Remplace par

Sheets("Ga14PourCycles").Range("A1").PasteSpecial xlPasteValues
ou toutes autres cellules que A1. Sauf que tu dois tenir compte
de cette restriction, ce doit être une cellule en ligne 1 puisque tu
as copié dans le presse-papier ta totalité des colonnes.



"Sunburn" discussion :
Bonjour,
lorsque je met ma macro dans ma feuille comme ça :
Private Sub Worksheet_Activate()
CopieColleValeur
End Sub
---
Sub CopieColleValeur()
Sheets("GA14").Columns("A:G").Copy
Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues ',
Operation:=xlNone, SkipBlanks _
:úlse, Transpose:úlse
Application.CutCopyMode = False
Sheets("Ga14PourCycles").Range("G1").ClearContents
End Sub
-----
ça plante.
mais quand j'execute ma macro toute seule, ça ne plante pas. pourquoi?
je voudrais que ma macro s'execute à chaque fois que je clic sur l'onglet
"30", même lorsque je vais sur cet onglet par cette procédure :
Merci.YANN
----
Sub CYCLE30()
CopieColleValeur
Dim F As Worksheet
Application.ScreenUpdating = False
ActiveWorkbook.Unprotect 'déprotection du classeur
For Each F In ActiveWorkbook.Worksheets
Select Case F.Name
Case "DA", "GA10", "GA11", "GA12", "GA13", "GA14", _
"30", "30_31", "30_32", "30_33", "30_34", "30_35"
F.Visible = True
F.Protect
Case Else
F.Visible = False
' F.Unprotect
End Select
Next
Sheets("30").Select
ActiveWorkbook.Protect Structure:=True
End Sub
----



Sunburn
Le #18482541
merci, et oui ....... trop la tete en l'air !!!

"Merguez07" a écrit :

essaye de remplacer
Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues
par
Sheets("Ga14PourCycles").Cells(1, 1).PasteSpecial Paste:=xlPasteValues

xavier


Publicité
Poster une réponse
Anonyme