> 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
38,90 €Enceintes 2.1 Logitech Z313 à 38,90 €
Valable jusqu'au 21 Mai

Amazon fait une promotion sur le pack d'enceintes Logitech 2.1 Z313 à 38,90 €. On trouve habituellement ce pack d'enceinte + caisson de basses de bonne qualité à plus de 45 €. 

Un boitier de commande filaire vous permet de mettre les haut-parleurs sous tension, de régler le volume et d'accéder facilement à la prise casque.


> Voir l'offre
36,90 €Jeu Nintendo Switch Sports à 36,90 €
Valable jusqu'au 22 Mai

Leclerc propose actuellement le tout nouveau Jeu Nintendo Switch Sports (avec une sangle de jambe) à 36,90 €, soit le même prix du marché. La livraison est gratuite en magasin. 

Vous souvenez-vous de Wii Sports ? Ce jeu sur lequel on se retrouvait en famille ou entre amis pour des parties de bowling et de tennis acharnées. Alors enfilez vos dragonnes, car la compétition reprend de plus belle avec Nintendo Switch Sports ! Badminton, volley-ball, football, chambara, bowling et tennis... profitez de vos sports préférés et découvrez-en de nouveaux pour affronter vos proches. 


> Voir l'offre
153,26 €LEGO 10274 Creator Expert ECTO-1 SOS Fantômes à 153,26 € livré
Valable jusqu'au 22 Mai

Amazon Allemagne fait une promotion sur le LEGO 10274 Creator Expert ECTO-1 SOS Fantômes qui passe à 144,19 € (avec la TVA ajustée). Comptez 9,07 € pour la livraison en France soit un total de 153,26 € livré au lieu de 199,99 €. Idéal pour les fans de SOS Fantômes et les passionnés de LEGO, ce modèle ECTO propose des heures de plaisir et une expérience de construction enrichissante pour les adultes. Le véhicule ECTO-1, qui mesure plus de 22,5 cm de haut, 47 cm de long et 16,5 cm de large, déborde de détails authentiques. Le set comporte 2352 pièces.

Vous pouvez utiliser votre compte Amazon FR sur Amazon DE. Pas de douane.


> 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