Vba : code pour afficher value dans cell

  • Initiateur de la discussion Initiateur de la discussion jepi67
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jepi67

XLDnaute Occasionnel
Bonjour à toutes et à tous,

Je bute sur une ligne de code pour afficher dans une cell de ma feuil la valeur donnée en réponse à une InputBox. 🙁
Quelqu'un peut-il me dépanner ? :whistle:

Voici le code:
Code:
Sub Imp_envelop_com()
        ' Macro enregistrée le 08/10/2005 par jepi67
'
    Réponse = InputBox('Combien d'enveloppes veux-tu imprimer en une fois ? maximum 20, minimum 1', 'Nombre')
        If Réponse < 1 Or Réponse > 20 Then
            MsgBox Réponse & ' doit être un nombre entre 1 et 20. pour ANNULER entre 0 et tape OK'
        End If
    
    Range('L11').Value = Reponse
[b]Afficher dans 'L11' la valeur de 'Reponse'
[/b]
    For i = 1 To Réponse
        ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
        Sheets('Nouv. base').Select
        Range('A4:H4').Select
        Selection.Copy
        Range('A1251').Select
        ActiveSheet.Paste
        Range('A5:H1251').Select
        Range('H1251').Activate
        Application.CutCopyMode = False
        Selection.Copy
        Range('A4').Select
        ActiveSheet.Paste
        Sheets('Enveloppe_com').Select
    Next i
    End Sub
Merci d'avance

PS : Si vous voyez d'autres imperfection dans cette macro n'hésitez pas à me faire la remarque, j'apprends 😉

Message édité par: jepi67, à: 15/10/2005 11:59
 
Salut Jipé

Dans l'urgence

Range('L11').Value = Reponse

tu as marquer un accent sur réponse au départ

mais tu peux écrire

Range('L11') = Réponse

Il faudrait que tu évites les copy- paste, select qui ralentissent Hénormément ta macro.

Je regarde ca cet aprem mais si qqn d'autre etc etc

bon aprem

Michel_M
 
Bonjour Michel et Ziopizza,

Merci, c'était plus simple que je croyais! Va falloir que je fasse mieux gaffe à respecter les accents 😱hmy:
Le mien est Alsacien... 🙂 😛

Quand aux 'copy-paste' ? merci s'il vous reste qlqs minutes; mais il n'y a pas le feu, profitez du soleil ce WE, si vous en avez... :lol:

à+
 
Re,

Peut-être que nous pourrons un jour le prendre ensemble ?
Le chianti évidemment 😉

à+
Edit C'est moi qui l'offre pour votre 'peine'

Message édité par: jepi67, à: 15/10/2005 13:07

Message édité par: jepi67, à: 15/10/2005 13:08
 
Bonjour Jepi, Michel_M, ZioPizza, le Forum

Pour moi ce sera plus un bon Beaujolai qu'un Chianti, vu que je suis à coté de l'Italie 😉

Sinon voici ma contribution dans la limite de ce que j'ai compris dans l'interprétation de la macro originale (il doit y avoir des forules en feuille 'Enveloppe_com' en lien vers la feuille ''Nouv. base' pour que les impressions se mettent à jour en imprimant 'Enveloppe_com' ou bien ?

Option Explicit

Sub Imp_envelop_com()
Dim InputNombre As Integer
Dim Bad As Byte
Dim WSEnveloppe As Worksheet
Dim WSNouvBase As Worksheet
Dim i As Byte

With ThisWorkbook
&nbsp; &nbsp;
Set WSEnveloppe = .Worksheets('Enveloppe_com')
&nbsp; &nbsp;
Set WSNouvBase = .Worksheets('Nouv. base')
End With

Start:
InputNombre = Application.InputBox('Combien d
'enveloppes veux-tu imprimer en une fois ?' & vbCrLf & _
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'maximum 20, minimum 1', 'Nombre d
'Enveloppes', Type:=1)
&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;
If InputNombre < 1 Or InputNombre > 20 Then
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Bad = MsgBox('La valeur doit être comprise&nbsp; entre 1 et 20' & vbCrLf & _
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'Voulez vous continuer ?', vbCritical + vbYesNo)
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
If Bad = vbNo Then
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
Exit Sub
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
Else
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
GoTo Start
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
End If
&nbsp; &nbsp; &nbsp; &nbsp;
End If
&nbsp; &nbsp;
&nbsp; &nbsp;
WSEnveloppe.Range('L11').Value = InputNombre
'sur quelle feuille ?



&nbsp; &nbsp;
For i = 1 To InputNombre
&nbsp; &nbsp; &nbsp; WSEnveloppe.PrintOut
&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;
With WSNouvBase
&nbsp; &nbsp; &nbsp; &nbsp; .Range('A4:H4').Copy .Range('A1251')
&nbsp; &nbsp; &nbsp; &nbsp; .Range('A5:H1251').Copy .Range('A4')
&nbsp; &nbsp; &nbsp; &nbsp;
End With
&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;
Next i
End Sub


Bon Week End à tous et toutes
[ol]@+Thierry[/ol]
 
Bonjour le Forum,
Bonjour Michel_M, Yves et Thierry,

:woohoo: je n'en demandais pas tant, mais j'apprécie (comme un bon Juliénas 😛 ).

Thierry tu as tout à fait deviné les tenants et about... de mon petit programme. Je vais essayer d'adapter le code car j'ai 2 feuilles 'Enveloppe' pour 2 formats d'env. diff. (A5 et commercial) et je voudrai que la même macro commande soit l'une ou l'autre.

Laissez moi creuser un peu, je reviendrai avec un fichier joint lorsque j'aurai fini :whistle: ou si j'ai encore besoin d'aide :S

En tout cas merci à tous et bon WE
 
Bonjour à tous,

Voilà, j'ai terminé mon p'tit prog d'impression d'enveloppes à partir d'une liste d'adresses.
Il est surement perfectible, les critiques (constructives 🙂 ) sont les bienvenues.

Et HOP un fichier joint, un! 😉

Merci à toutes et tous [file name=Imp_envelop_jepi.zip size=30130]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Imp_envelop_jepi.zip[/file]
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
649
Réponses
12
Affichages
499
  • Question Question
Microsoft 365 Code VBA
Réponses
2
Affichages
516
Réponses
7
Affichages
968
Réponses
5
Affichages
468
Réponses
22
Affichages
3 K
Retour