> Tous les forums > Forum Bureautique
 VBA macro avec formule si( pour imprimerSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Obelix73
  Posté le 23/08/2010 @ 20:41 
Aller en bas de la page 
Petit astucien

Bonsoir à tous,

Je suis novice en VBA, j'arrive à lire et à comprendre certaines macros.
Je voudrais faire une macro "impression" qui en clair dirait:

si(C3=1;"tu imprime l'onglet nommé dans la cellule A3"; sinon tu fait rien) puis
si(C4=1;"tu impression l'onglet nommé dans la cellule A4"; sinon tu fait rien) puis
si(C5=1;"tu impression l'onglet nommé dans la cellule A5"; sinon tu fait rien) puis
et ainsi de suite jusqu'à C257.

J'ai cherché sur le forum mais je n'ai pas trouvé de formules en VBA.

D'avance merci à tous ceux qui pourrons m'aider à traduire ce language clair en VBA (ou me rediriger vers un forum plus approprié ?).

@+
Merci

Publicité
galopin01
 Posté le 23/08/2010 à 21:37 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

Voici une macro qui te fera ça :

Sub test()
For i = 3 To 257
If Cells(i, 3) = 1 Then Sheets(Cells(i, 1).Value).PrintOut preview:=True
Next
End Sub

Macro à coller dans le module de la feuille qui pilote la chose
Avec cette macro tu as un aperçu avant impression avant, ce qui te permet d'éviter d'user du papier pour rien pendant la phase de réglage...

Si tu supprimes le preview:=True l'impression se fait directement et tu as intéret à prévoir le papier avant !

A+

Obelix73
 Posté le 23/08/2010 à 22:17 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir Galopin01,

Merci pour cette macro mais elle prend en compte les onglets dans l'ordre ou ils sont placés dans mon fichier.

Moi j'aimerais si cela est possible bien sur en VBA, c'est:

si(C3=1;impression del'onglet nommé dans la cellule A3"; "") puis
si(C4=1;impression del'onglet nommé dans la cellule A4"; "") puis
si(C5=1;impression del'onglet nommé dans la cellule A5"; "") et ainsi de suite jusqu'à la cellule C257.

un peu tordu, mais cela me permettrais de sélectionner les feuilles à imprimer selon les besoins, au lieu de toujours imprimer 257 pages.

@+

encore merci,

galopin01
 Posté le 24/08/2010 à 02:55 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

As-tu essayé seulement ?

ça te parait trop court ? t'aurais préféré que je te le fasse en 4 pages ?



Modifié par galopin01 le 24/08/2010 04:56
Obelix73
 Posté le 24/08/2010 à 07:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour Galopin01,

Je ne me serais jamais permis de te repondre sans avoir fait des tests au préalable .

J'ai effectivement testé à plusieurs reprise ta macro.

Ce matin après une bonne nuit de sommeil, Je viens de comprendre le pourquoi du disfonctionnement.

j'ai 7 onglets de contrôle positionnés en début de fichier puis j'ai mes 257 onglets nommés de 1 à 257.

j'ai donc mis les onglets de 1 à 257 au début puis mes 7 onglets de contrôle à la fin du fichier (moins pratique pout travailler mais cela fonctionne).

Je ne me permettrais pas de te faire perdre ton temps car tu m'en fais tellement gagner avec tes macros.

encore merci Galopin01,

@+

Obelix73

galopin01
 Posté le 24/08/2010 à 10:00 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

bonjour,

Le problème est certainement que tu as nommé tes onglets avec des numéros or ce n'était pas précisé...

Dans ce cas il faut modifier comme suit :

Sub test()
For i = 3 To 257
If Cells(i, 3) = 1 Then Sheets(CStr(Cells(i, 1).Value)).PrintOut preview:=True
Next
End Sub

A+

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
18,48 €Clé USB 3.1 Sandisk Ultra Luxe 128 Go à 18,48 €
Valable jusqu'au 28 Janvier

Cdiscount propose la clé USB Sandisk Ultra Luxe d'une capacité de 128 Go à 18,48 €. Cette clé USB 3.1 toute en métal est compatible USB 2.0 et offre de bons débits d'environ 150 Mo/s en lecture et en écriture. Elle inclut le logiciel SanDisk SecureAccess pour un cryptage et une protection par mot de passe de vos données sensibles.


> Voir l'offre
8,99 €Lot de 32 piles Philips AA à 8,99 €
Valable jusqu'au 30 Janvier

Fnac fait une promotion sur le lot de 32 piles Philips AA qui passe à 8,99 € au lieu de 15 €.


> Voir l'offre
51,99 €Barre de son bluetooth Philips TAB5105 à 51,99 €
Valable jusqu'au 28 Janvier

Cdiscount fait une promotion sur la barre de son bluetooth Philips TAB5105 qui passe à 51,99 € alors qu'on la trouve ailleurs à partir de 80 €. Cette barre de son intègre 2 haut-parleurs 2x15W et peut lire vos musiques sans fil via Bluetooth. Une entrée audio jack 3.5 mm et optique TOSLINK sont également présentes. Compatible HDMI ARC, vous pourrez contrôler la barre de son à l'aide de la télécommande de votre téléviseur. Elle est suffisamment fine pour se glisser sous la plupart des téléviseurs. Vous pouvez également la fixer au mur à l'aide des supports intégrés.


> Voir l'offre

Sujets relatifs
raccourci ou macro pour imprimer avec options ?
soucis avec Excel starter 2010 pour imprimer..
raccourci pour imprimer avec options
Macro pour imprimer une liste
macro pour enregistrer fichier avec nom d1cellule
cherche une macro ou formule avec "si" et "alors"
Formule pour somme avec deux critères
macro pour comparer 2 listes
Creation d' une boucle macro dans fichier EXCEL pour impression
Macro pour word 2013
Plus de sujets relatifs à VBA macro avec formule si( pour imprimer
 > Tous les forums > Forum Bureautique