Boîte message pour valider lancement macro

Le
PLG
Bonjour à vous tous

Voilà j'ai une macro qui récupère des données d'une feuille nommée
"Saisie"et les ventile sur une cinquantaine d'autres feuilles.
A la fin, toutes les données de "Saisie" sont effacées !
Je souhaiterais donc que lorsque la personne lance cette macro, il lui soit
demandé dans une fenêtre : Etes vous sûr ? ( avec 2 boutons " oui" et "non" )
Si oui, la macro déroule, si non on quitte la macro.
Tant que j'y suis ( j'abuse un peu! )

Le code qui suit est super mais copie la totalité ( données, formats.. )
J'aurais souhaité que ne soit copié que les Valeurs.
[D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)

Bonne soiré, nuit et merci d'avance de votre attention ainsi que de vos
réponses.
Pat
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
JPMonnier
Le #18475301
Bonsoir
réponse 1
Sub Vboui()
If MsgBox("Exécuter macro1, êtes vous sûr ?", Vbyesno) = Vbyes Then
Macro1
End If
End Sub

--
Cordialement

"PLG" news:
Bonjour à vous tous

Voilà... j'ai une macro qui récupère des données d'une feuille nommée
"Saisie"et les ventile sur une cinquantaine d'autres feuilles.
A la fin, toutes les données de "Saisie" sont effacées !
Je souhaiterais donc que lorsque la personne lance cette macro, il lui
soit
demandé dans une fenêtre : Etes vous sûr ? ( avec 2 boutons " oui" et
"non" )
Si oui, la macro déroule, si non on quitte la macro.
Tant que j'y suis... ( j'abuse un peu! )

Le code qui suit est super mais copie la totalité ( données,
formats..... )
J'aurais souhaité que ne soit copié que les Valeurs.
[D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)

Bonne soiré, nuit... et merci d'avance de votre attention ainsi que de vos
réponses.
Pat


JPMonnier
Le #18475291
réponse 2
La copy reste inchangée
c'est quand tu colles qu'il faut utiliser cette commande
sélectionne la destination puis :

Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:úlse
--
Cordialement

"PLG" news:
Bonjour à vous tous

Voilà... j'ai une macro qui récupère des données d'une feuille nommée
"Saisie"et les ventile sur une cinquantaine d'autres feuilles.
A la fin, toutes les données de "Saisie" sont effacées !
Je souhaiterais donc que lorsque la personne lance cette macro, il lui
soit
demandé dans une fenêtre : Etes vous sûr ? ( avec 2 boutons " oui" et
"non" )
Si oui, la macro déroule, si non on quitte la macro.
Tant que j'y suis... ( j'abuse un peu! )

Le code qui suit est super mais copie la totalité ( données,
formats..... )
J'aurais souhaité que ne soit copié que les Valeurs.
[D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)

Bonne soiré, nuit... et merci d'avance de votre attention ainsi que de vos
réponses.
Pat


FFO
Le #18475281
Salut à toi

Pour ta première demande je te propose ces lignes de code :

If MsgBox("Etes vous sûr ?", vbYesNo) = vbNo Then
Exit Sub
Else
Code .....
End If


Pour ta 2° demande je te propose ceci :

Sheets("1").Range("D" & Sheets("1").Range("D65000").End(xlUp).Row, "N" &
Sheets("1").Range("D65000").End(xlUp).Row).Value = Range("D4","N4").Value

A mettre sur une seule ligne dans l'éditeur VBA

Celà devrait te convenir
Dis moi !!!!!
PLG
Le #18475271
Merci JP pour ta promptitude à répondre.
Je vais aller manger, aussi je testerai tes solutions tout à l'heure.
Je repasse donc !
Encore merci

"JPMonnier" a écrit :

réponse 2
La copy reste inchangée
c'est quand tu colles qu'il faut utiliser cette commande
sélectionne la destination puis :

Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:úlse
--
Cordialement

"PLG" news:
> Bonjour à vous tous
>
> Voilà... j'ai une macro qui récupère des données d'une feuille nommée
> "Saisie"et les ventile sur une cinquantaine d'autres feuilles.
> A la fin, toutes les données de "Saisie" sont effacées !
> Je souhaiterais donc que lorsque la personne lance cette macro, il lui
> soit
> demandé dans une fenêtre : Etes vous sûr ? ( avec 2 boutons " oui" et
> "non" )
> Si oui, la macro déroule, si non on quitte la macro.
> Tant que j'y suis... ( j'abuse un peu! )
>
> Le code qui suit est super mais copie la totalité ( données,
> formats..... )
> J'aurais souhaité que ne soit copié que les Valeurs.
> [D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
>
> Bonne soiré, nuit... et merci d'avance de votre attention ainsi que de vos
> réponses.
> Pat




PLG
Le #18476021
Bonsoir FFO (?)

Je te remercie pour tes deux réponses, les deux me conviennent très bien.
JPMonier avait lui aussi donné 2 solutions parfaites.
Pour la question 1, ton code s'insère directement dans le mien, JP me donne
un nouveau qui lance ou non ma macro.
Tous les chemins ne mènent ils pas à Rome ...!?
Je te remercie pour ton aide.
Bonne soirée à toi et à un de ces 4 peut-être !
Pat


"FFO" a écrit :

Salut à toi

Pour ta première demande je te propose ces lignes de code :

If MsgBox("Etes vous sûr ?", vbYesNo) = vbNo Then
Exit Sub
Else
Code .....
End If


Pour ta 2° demande je te propose ceci :

Sheets("1").Range("D" & Sheets("1").Range("D65000").End(xlUp).Row, "N" &
Sheets("1").Range("D65000").End(xlUp).Row).Value = Range("D4","N4").Value

A mettre sur une seule ligne dans l'éditeur VBA

Celà devrait te convenir
Dis moi !!!!!



PLG
Le #18476011
Bon.... me re-voilà !
J'ai testé tes deux solutions à mes deux petits problèmes...
Cela fonctionne parfaitement.
Je te remercie de ton aide et te souhaite une bonne soirée.
A bientôt peut-être...
Pat

"JPMonnier" a écrit :

réponse 2
La copy reste inchangée
c'est quand tu colles qu'il faut utiliser cette commande
sélectionne la destination puis :

Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:úlse
--
Cordialement

"PLG" news:
> Bonjour à vous tous
>
> Voilà... j'ai une macro qui récupère des données d'une feuille nommée
> "Saisie"et les ventile sur une cinquantaine d'autres feuilles.
> A la fin, toutes les données de "Saisie" sont effacées !
> Je souhaiterais donc que lorsque la personne lance cette macro, il lui
> soit
> demandé dans une fenêtre : Etes vous sûr ? ( avec 2 boutons " oui" et
> "non" )
> Si oui, la macro déroule, si non on quitte la macro.
> Tant que j'y suis... ( j'abuse un peu! )
>
> Le code qui suit est super mais copie la totalité ( données,
> formats..... )
> J'aurais souhaité que ne soit copié que les Valeurs.
> [D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
>
> Bonne soiré, nuit... et merci d'avance de votre attention ainsi que de vos
> réponses.
> Pat




Publicité
Poster une réponse
Anonyme