Copier coller dans des feuilles protégées

Résolu
nouméa -  
alain_98 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, je suis un débutant dans la programmation et j'aurai besoin de vos conseils pour le problème suivant.
je saisie des données dans un petit programme excel a partir d'une page d'accueil , puis avec une macro j'insert et je copie les données dans 2 autres feuilles protégées.
mon problème c'est que l'insertion des lignes dans ces autres feuilles se fait normalement, mais pas les données .
j'utilise une macro qui déprotège les feuilles et protège à nouveau. mais un message d'erreur dans VBA à la ligne de copier coller.
ci joint la macro en question
merci de vos réponse alain_98
Sub enregistrement_données()
Sheets("BD").Select
ActiveSheet.Unprotect ("m_d_passe")
Rows("10:10").Insert Shift:=xlDown
Sheets("TSS").Select
ActiveSheet.Unprotect ("m_d_passe")
Rows("10:10").Insert Shift:=xlDown
Sheets("Accueil").Select
Range("A2:J2").Copy
Sheets("BD").Select
Range("A10").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Accueil").Select
Range("A3:J3").Copy
Sheets("TSS").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
ActiveSheet.Protect ("m_d_passe")
Sheets("Accueil").Select
Range("a3:j3").Copy
Sheets("BD").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
ActiveSheet.Protect ("m_d_passe")
Sheets("Accueil").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("F13:F14,F16,F18,F20,F22,H13:H14,H16,H18,H20,H22").Select
Range("H22").Activate
Selection.ClearContents
Range("F13").Select
End Sub
A voir également:

4 réponses

lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
Quel ligne exactement, parcque je vois bien où ca pourrais survenir mais je n'en suis pas certain.
A+
0
alain_98 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
merci pour ton aide en fait j'ai trouvé la solution et t'envoies la macro complète modifié.
il me reste 2 problèmes. le 1er est que la cellule f 22 égale à la cellule f20 x par la cellule (d22 non copier celle-ci), de la page d'accueil est copier avec la macro dans les autres feuilles si je la vérrouille (f22) j'ai un message d'erreur 1004 excatement. il faut la déverouiller pour quelle fonctionne.
2ème problème est que je souhaite que mon programme ne soit pas pirater mais je ne sais pas faire. c'est à dire que je voudrai faire une macro ou autre qui en fonction d'un critère bloquerai la saisie des données.
Merci pour ton aide alain_98.
voici la macro.
Sub enregistrement_données()
Sheets("BD").Select
ActiveSheet.Unprotect ("m.d.p")
Rows("10:10").Insert Shift:=xlDown
Sheets("TSS").Select
ActiveSheet.Unprotect ("m.d.p")
Rows("10:10").Insert Shift:=xlDown
Sheets("Accueil").Select
Range("A2:J2").Copy
Sheets("BD").Select
Range("A10").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Accueil").Select
Range("A3:J3").Copy
Sheets("TSS").Select
Range("A10").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
ActiveSheet.Protect ("m.s.p")
Sheets("Accueil").Select
ActiveSheet.Unprotect ("m.d.p")
Range("F13:F14,F16,F18,F20,F22,H13:H14,H16,H18,H20,H22").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("F13").Select
ActiveSheet.Protect ("m.d.p")
End Sub
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
re.
Sheets("BD").Select
Range("A10").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

là y a une erreur, tu copie sur la sélection mais t'a rien sélectionné ??
Autre remarque,tu copie 2 fois, une fois pour les valeur et une fois pour les format.....

En fait j'ai fait fonctionner comme tu a fait, la seule chose que j'ai réussi à faire c'est de planter le classeur. erreur 1004 et plus possible de sélectionné une cellule et c'est bien le code mis en remarque ci-dessus qui en est la cause.
Bon, j'ai ouvert un autre classeur ...
je reprend; les lignes...
Sheets("BD").Select
Range("A10").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False


sont à remplacer par...
     Sheets("BD").Select
    Range("A10").Select
'Copie tout, les valeurs et les formats.
    ActiveSheet.Paste

et c'est tout.

la même chose pour la 2èm copie.

D'après moi ton erreur 1004 est réglée.

Reste ta 2èm question, dans l'IDE tu peu verrouillé le code avec un mot de passe (tâche de pas l'oublié) le code de protection classeur ont sait le faire sauter mais celui là je sais pas?
Dans l'IDE >> outils >> propriétés de VBAprojet >> Protection... ça répond pas exactement à ce que tu veux mais c'est toujours ça.
Tu dit...
0
alain_98 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour Lermitte222, et tous les accros d'excel et du VBE.
j'ai modifié la macro et elle fonctionne parfaitement. je te remercie pour ton aide, je n'ai pas fini de faire toutes les macros, mais je ne désespère pas,en faites je fais ça pendant mon temps libre.
si j'ai besoin de conseils supplémentaires des accros de la programmation je ferai certainement appel de nouveau à vous.
En attendant, gros merçi.
igniorant, mais j'ai des excuses, je débutes
alain_98.
0