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 _
:=False, Transpose:=False
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
----
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" a écrit dans le message de 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 ----
Lorsque tu veux copier tes données, pourquoi ne pas préciser
une cellule à partir de laquelle le "coller" doit s'effectuer.
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" <Sunburn@discussions.microsoft.com> a écrit dans le message de groupe de
discussion : 78AA3367-3980-4473-BE27-0B9416DE76F2@microsoft.com...
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
----
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" a écrit dans le message de 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 ----
Merguez07
essaye de remplacer Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues par Sheets("Ga14PourCycles").Cells(1, 1).PasteSpecial Paste:=xlPasteValues
xavier
"Sunburn" a écrit dans le message de 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 ----
essaye de remplacer
Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues
par
Sheets("Ga14PourCycles").Cells(1, 1).PasteSpecial Paste:=xlPasteValues
xavier
"Sunburn" <Sunburn@discussions.microsoft.com> a écrit dans le message de
groupe de discussion : 78AA3367-3980-4473-BE27-0B9416DE76F2@microsoft.com...
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
----
essaye de remplacer Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues par Sheets("Ga14PourCycles").Cells(1, 1).PasteSpecial Paste:=xlPasteValues
xavier
"Sunburn" a écrit dans le message de 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
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").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" a écrit dans le message de 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 ----
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").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" <Sunburn@discussions.microsoft.com> a écrit dans le message de groupe de
discussion : 78AA3367-3980-4473-BE27-0B9416DE76F2@microsoft.com...
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
----
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" a écrit dans le message de 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
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
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
essaye de remplacer Sheets("Ga14PourCycles").Cells.PasteSpecial Paste:=xlPasteValues par Sheets("Ga14PourCycles").Cells(1, 1).PasteSpecial Paste:=xlPasteValues