Lire une cellule dans fonction VBA Excel.

Résolu/Fermé
remy.38 Messages postés 6 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 21 mai 2012 - 21 mai 2012 à 13:45
remy.38 Messages postés 6 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 21 mai 2012 - 21 mai 2012 à 18:50
Bonjour,

j'ai la petite macro ci dessous qui fonctionne tres bien et je voudrais changer la valeur 215 de la ligne For i = 1 To 215 par la valeur ce touvant dans une feuille se nomant "Modèle" Celulle "BF1".

est ce que quelqu'un a une solution rapide pour formuler cette requette ?

j'ais aussi un autre petit bug avec la meme macro

je desire integrer au lancement de cette marcro une boite de dialogue "msgbox yesno" pour inviter l'utilsateur a valider par oui ou par non l'execution de cette macro... et la c'est le drame..... je n'y arrive pas...... si quelqu"un peu m'aider.... ce serais cool....

PS je debute en VBA et c'est pas toujour evident...


Sub prn_lst()

MsgBox "VOUS ALLEZ IMPRIMER LA TOTALITE DU CATALOGUE DES PRODUITS", vbExclamation, "ATTENTION ! "
For i = 1 To 215
Sheets("ZPI99ACT").Select
Range("C" & i).Select
Selection.Copy
Sheets("modèle").Select
Range("AR1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Sheets("ZPI99ACT").Select
Range("D" & i).Select
Selection.Copy
Sheets("modèle").Select
Range("AR2").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
ActiveWindow.SelectedSheets.PrintOut copies:=1, collate:=True, ignoreprintareas:=False
Next i
Range("BB1").Select
Selection.Copy
Range("AR1").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("BB2").Select
Application.CutCopyMode = False
Selection.Copy
Range("AR2").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

MsgBox "C'est Términé ", vbExclamation, "Felicitation "

End Sub


merci de votre aide.
cordialement
remy




A voir également:

2 réponses

bonjour,

Pour la première question, vous pouvez faire :

For i = 1 To Range("BF1").Value 

pour le deuxième soucis, par exemple:
Msg = "Souhaitez-vous continuer?"    ' Définit le message.
Style = vbYesNo + vbCritical + vbDefaultButton2    ' Définit les boutons.
Title = "Impression du catalogue "    ' Définit le titre.
               
Response = MsgBox(Msg, Style, Title)

If Response = vbYes Then    ' L'utilisateur a choisi Oui.
  .....
  'le code
  ....
Else    ' L'utilisateur a choisi Non.
    Exit Sub
End If

l'aide et les exemples de l'aide VBA sont assez explicites

A +
1
remy.38 Messages postés 6 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 21 mai 2012
21 mai 2012 à 18:50
Merci Pour ton aide !
0
Cooyoo Messages postés 687 Date d'inscription lundi 26 décembre 2011 Statut Membre Dernière intervention 20 août 2019 227
21 mai 2012 à 13:49
Salut.
Pour ton 1er soucis tu définis une variable (a par exemple) qui va prendre la valeur de la cellule qui va bien et tu te retrouve avec :
for i = 1 to a
Pour la syntaxe je te laisse chercher, ça fait longtemps que je n'ai plus codé en VB.
-1