Ne pas imprimer les lignes contenant ""

Bonjour à tous,

j'ai réalisé un fichier excel pour mettre en forme un export brut de façon "automatique".

Je me retrouve donc avec une feuille contenant un grand nombre de formules du type =SI(Export!A2>0;Export!A2;"") sur 1500 lignes.

Le souci est que lorsque je souhaite imprimer cette feuille, toutes les lignes contenant ces formules sont imprimées, qu'elle redirige vers une donnée ou non.

Ce classeur est destiné à des agents avec très peu de compétences excel, pour lesquels l'impression d'une sélection, les zones d'impression ou les filtres sont trop compliqués et font perdre du temps.

je suis donc à la recherche d'une solution par vba et en parcourant le forum je suis tombé un code que j'ai adapté à mon fichier :

Sub Imprimer()
    Dim n%
    Application.EnableEvents = False
    n = 3
    With Feuil2
        Do
            If .Cells(n + 1, 1).Value = "" Then .Rows(n + 1).Hidden = True
            n = n + 1
        Loop While .Cells(n + 1, 1).Formula <> ""
        With .PageSetup
            .PrintArea = "$A1:H" & n
        End With
        .PrintOut
        .Rows.Hidden = False
    End With
    Application.EnableEvents = False
End Sub

Ce code fonctionne très bien à un point près : comme il fait intervenir une boucle, le temps d'exécution est très long et variable, allant jusqu'à 8 minutes.

Y'a-t-il un moyen d'optimiser ce code pour mon fichier lui permettant de s'exécuter plus vite, voir d'envisager une autre approche?

ci-joint le fichier en question

merci beaucoup par avance pour votre aide

bonjour

que donne l'enregistreur de macros (filtrage des "" grâce au menu Données Filtrer et impression) ?

Salut,

jmd a écrit :

bonjour

que donne l'enregistreur de macros (filtrage des "" grâce au menu Données Filtrer et impression) ?

Obligé de passer par une macro alors ?

Cdlt,

re

la vraie solution pour une flopée d'utilisateurs non informaticiens, ce n'est surtout pas Excel (avec ou sans macro) mais un SGBD (Access...)

en attendant, oui, on bidouille avec Excel (et éventuellement des macros)

mais on peut faire des filtres par TCD (et sans macro) mais il faudra

jmd a écrit :

que donne l'enregistreur de macros (filtrage des "" grâce au menu Données Filtrer et impression) ?

La solution d'enregistrer une macro fonctionne très bien c'est en effet beaucoup plus simple et plus rapide.

Merci beaucoup, j'ai toujours tendance à chercher trop compliqué.

jmd a écrit :

la vraie solution pour une flopée d'utilisateurs non informaticiens, ce n'est surtout pas Excel (avec ou sans macro) mais un SGBD (Access...)

Je n'ai jamais vraiment utilisé Access, c'est une piste que je vais explorer, mais pour les utilisateurs de mon fichier, un nouvel outil risque de les perturber encore plus.

Encore merci pour votre aide rapide!

Rechercher des sujets similaires à "pas imprimer lignes contenant"