Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

ouv et imprime liste fichiers

9 réponses
Avatar
Gilles72
BONJOUR,

je crée une liste des fichiers d'un repertoire (chemin complet)

je souhaite ouvrir ces fichiers et les imprimer

j'ai débuté ce code, avec 1 fichier en ex. mais la macro revient toujours
dessus et ne s'arrête pas

kekun verrait-il les failles grossières de mon brouillon de code?

Merci

Gilles72

Sub imprime()

Application.EnableEvents = False

On Error Resume Next

Dim Cal As Range, cell As Range, Ligne As Long

'Path = "activecell"



Sheets(liste).Select

Set Cal = Range("A1:A12")

[A1].Select

For Each cell In Cal

If ActiveCell.Value <> "" Then

Workbooks.Open Filename:=ActiveCell 'marche pas



MsgBox "Bon bin... !...", 0, "Impression ...."





Application.ActivePrinter = "Canon iR C3220 PCL5c sur Ne05:"



End If

Application.DisplayAlerts = False

ActiveWorkbook.Close



Next cell



End Sub

9 réponses

Avatar
isabelle
bonjour Gilles,

il ne faut pas utiliser "cell" comme variable c'est un nom réservé à excel

For Each c In Cal
If c <> "" Then
Workbooks.Open Filename:=c

isabelle

BONJOUR,

je crée une liste des fichiers d'un repertoire (chemin complet)

je souhaite ouvrir ces fichiers et les imprimer

j'ai débuté ce code, avec 1 fichier en ex. mais la macro revient toujours
dessus et ne s'arrête pas

kekun verrait-il les failles grossières de mon brouillon de code?

Merci

Gilles72

Sub imprime()

Application.EnableEvents = False

On Error Resume Next

Dim Cal As Range, cell As Range, Ligne As Long

'Path = "activecell"



Sheets(liste).Select

Set Cal = Range("A1:A12")

[A1].Select

For Each cell In Cal

If ActiveCell.Value <> "" Then

Workbooks.Open Filename:¬tiveCell 'marche pas



MsgBox "Bon bin... !...", 0, "Impression ...."





Application.ActivePrinter = "Canon iR C3220 PCL5c sur Ne05:"



End If

Application.DisplayAlerts = False

ActiveWorkbook.Close



Next cell



End Sub




Avatar
francois.forcet
On 6 fév, 17:01, "Gilles72" wrote:
BONJOUR,

je crée une liste des fichiers d'un repertoire (chemin complet)

je souhaite ouvrir ces fichiers et les imprimer

j'ai débuté ce code, avec 1 fichier en ex. mais la macro revient toujo urs
dessus et ne s'arrête pas

kekun verrait-il les failles grossières de mon brouillon de code?

Merci

Gilles72

Sub imprime()

Application.EnableEvents = False

On Error Resume Next

Dim Cal As Range, cell As Range, Ligne As Long

'Path = "activecell"

Sheets(liste).Select

  Set Cal = Range("A1:A12")

  [A1].Select

  For Each cell In Cal

  If ActiveCell.Value <> "" Then

    Workbooks.Open Filename:¬tiveCell 'marche pas

 MsgBox "Bon bin... !...", 0, "Impression ...."

  Application.ActivePrinter = "Canon iR C3220 PCL5c sur Ne05:"

    End If

    Application.DisplayAlerts = False

ActiveWorkbook.Close

Next cell

End Sub


Salut à toi

Ce code ouvre tous les fichiers d'un répertoire :

With Application.FileSearch
.LookIn = "C:Chemin"
.FileType = msoFileTypeExcelWorkbooks
.Execute
End With
With Application.FileSearch
For I = 1 To .FoundFiles.Count
.Application.Workbooks.Open Filename:="E:Chemin" &
Mid(.FoundFiles(I), Len(.LookIn) + 1)
'Mets ton code pour imprimer ici
Next I
End With

Celà devrait convenir
Dis moi !!!

Avatar
Gilles72
bonjour Isabelle
et merci,
c'est effectivement beaucoup plus simple
Gilles
"isabelle" a écrit dans le message de news:

bonjour Gilles,

il ne faut pas utiliser "cell" comme variable c'est un nom réservé à excel

For Each c In Cal
If c <> "" Then
Workbooks.Open Filename:=c

isabelle

BONJOUR,

je crée une liste des fichiers d'un repertoire (chemin complet)

je souhaite ouvrir ces fichiers et les imprimer

j'ai débuté ce code, avec 1 fichier en ex. mais la macro revient toujours
dessus et ne s'arrête pas

kekun verrait-il les failles grossières de mon brouillon de code?

Merci

Gilles72

Sub imprime()

Application.EnableEvents = False

On Error Resume Next

Dim Cal As Range, cell As Range, Ligne As Long

'Path = "activecell"



Sheets(liste).Select

Set Cal = Range("A1:A12")

[A1].Select

For Each cell In Cal

If ActiveCell.Value <> "" Then

Workbooks.Open Filename:¬tiveCell 'marche pas



MsgBox "Bon bin... !...", 0, "Impression ...."





Application.ActivePrinter = "Canon iR C3220 PCL5c sur Ne05:"



End If

Application.DisplayAlerts = False

ActiveWorkbook.Close



Next cell



End Sub





Avatar
Gilles72
Merci François,
ce code me parait pas mal
Toutefois, il se limite aux fichiers xl, alors que j'ai aussi des word et
pdf
Par ailleurs, avant de le tester(ce soir) est-ce qu'il prend aussi les
s/repertoires?
Dans mon code je part d'une liste constituée par macro, car je n'ai pas
trouvé poutouvrir dans les REP et S/REP
Merci encore
Gilles
a écrit dans le message de news:

On 6 fév, 17:01, "Gilles72" wrote:
BONJOUR,

je crée une liste des fichiers d'un repertoire (chemin complet)

je souhaite ouvrir ces fichiers et les imprimer

j'ai débuté ce code, avec 1 fichier en ex. mais la macro revient toujours
dessus et ne s'arrête pas

kekun verrait-il les failles grossières de mon brouillon de code?

Merci

Gilles72

Sub imprime()

Application.EnableEvents = False

On Error Resume Next

Dim Cal As Range, cell As Range, Ligne As Long

'Path = "activecell"

Sheets(liste).Select

Set Cal = Range("A1:A12")

[A1].Select

For Each cell In Cal

If ActiveCell.Value <> "" Then

Workbooks.Open Filename:¬tiveCell 'marche pas

MsgBox "Bon bin... !...", 0, "Impression ...."

Application.ActivePrinter = "Canon iR C3220 PCL5c sur Ne05:"

End If

Application.DisplayAlerts = False

ActiveWorkbook.Close

Next cell

End Sub


Salut à toi

Ce code ouvre tous les fichiers d'un répertoire :

With Application.FileSearch
.LookIn = "C:Chemin"
.FileType = msoFileTypeExcelWorkbooks
.Execute
End With
With Application.FileSearch
For I = 1 To .FoundFiles.Count
.Application.Workbooks.Open Filename:="E:Chemin" &
Mid(.FoundFiles(I), Len(.LookIn) + 1)
'Mets ton code pour imprimer ici
Next I
End With

Celà devrait convenir
Dis moi !!!

Avatar
Misange
[...]
Regarde la page répertoires sur excelabo. Tu y trouveras des solutions
variées et tu butineras celle qui t'arrange :-)

--
Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net
Avatar
Gilles72
OK merci Misange
Gilles
Avatar
francois.forcet
On 7 fév, 12:05, "Gilles72" wrote:
Merci François,
ce code me parait pas mal
Toutefois, il se limite aux fichiers xl, alors que j'ai aussi des word et
pdf
Par ailleurs, avant de le tester(ce soir) est-ce qu'il prend aussi les
s/repertoires?
Dans mon code je part d'une liste constituée par macro, car je n'ai pas
trouvé poutouvrir dans les REP et S/REP
Merci encore
Gilles
a écrit dans le message de news:

On 6 fév, 17:01, "Gilles72" wrote:





BONJOUR,

je crée une liste des fichiers d'un repertoire (chemin complet)

je souhaite ouvrir ces fichiers et les imprimer

j'ai débuté ce code, avec 1 fichier en ex. mais la macro revient tou jours
dessus et ne s'arrête pas

kekun verrait-il les failles grossières de mon brouillon de code?

Merci

Gilles72

Sub imprime()

Application.EnableEvents = False

On Error Resume Next

Dim Cal As Range, cell As Range, Ligne As Long

'Path = "activecell"

Sheets(liste).Select

Set Cal = Range("A1:A12")

[A1].Select

For Each cell In Cal

If ActiveCell.Value <> "" Then

Workbooks.Open Filename:¬tiveCell 'marche pas

MsgBox "Bon bin... !...", 0, "Impression ...."

Application.ActivePrinter = "Canon iR C3220 PCL5c sur Ne05:"

End If

Application.DisplayAlerts = False

ActiveWorkbook.Close

Next cell

End Sub


Salut à toi

Ce code ouvre tous les fichiers d'un répertoire :

With Application.FileSearch
.LookIn = "C:Chemin"
.FileType = msoFileTypeExcelWorkbooks
.Execute
End With
With Application.FileSearch
For I = 1 To .FoundFiles.Count
.Application.Workbooks.Open Filename:="E:Chemin" &
Mid(.FoundFiles(I), Len(.LookIn) + 1)
'Mets ton code pour imprimer ici
Next I
End With

Celà devrait convenir
Dis moi !!!- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Rebonjour Gilles

Ce code effectivement ne s'adresse qu'aux documents Excel d'un
répertoire par la ligne :


.FileType = msoFileTypeExcelWorkbooks

Tu peux récupérer avec l'aide d'Excel (Touche F1 aprés avoir
sélectionné "FileType"
l'ensemble des instructions disponibles correspondant au différent
type de document

Pour Word c'est :


msoFileTypeWordDocuments

Tu modifies la ligne ainsi :

.FileType = msoFileTypeWordDocuments

Mais chaque type de document que tu rechercheras en modifiant cette
ligne nécessitera un traitement propre quant à son ouverture et à son
impression

Pour Word par exemple aprés avoir adapté la ligne :

.FileType = msoFileTypeWordDocuments

pour l'ouverture des documents il faudra mettre :

Dim oWdApp As Object
Set oWdApp = CreateObject("Word.Application")
With oWdApp
.Visible = True
End With
With Application.FileSearch
.LookIn = "C:Chemin"
.FileType = msoFileTypeWordDocuments
.Execute
End With
With Application.FileSearch
For I = 1 To .FoundFiles.Count
Set WordDoc = oWdApp.Documents.Open("C:Chemin" & Mid(.FoundFiles(I),
Len(.LookIn) + 1))
'Ici le code d'impression d'un document Word
Next I
End With

Il faudra aussi cocher la référence "Microsoft Word 11.0 Object
Library"

Chaque type de document devra avoir sa procédure ainsi toutes ces
procédures que tu mettra en cascade dans ta macro

Pour les documents de type Pdf je n'ai trouvé pour le "FileType" que
l'instruction :

msoFileTypeAllFiles

pour les récupérer

Ce qui n'est pas l'idéale car elle s'adresse à toute type de fichier
pour un traitement ciblé d'ouverture et d'impression

Peut être que quelqu'un de plus féru pourra apporter une solution

Espérant avoir répondu à tes attentes


Avatar
Gilles72
bonjour François
pour quelqu'un de pas feru, tu m'impressionnes
merci pour cette manne de tuyaux
je vais regarder ça , car en attendant je suis parti sur une autre methode
qui consiste à lister le chemin de tous les fichiers du REP et S/REP
Partant de là je tente de mettre au point une macro (voir le fil du
7/2 ),qui ouvre les fichiers en prenant les noms de cette liste
Pour ouvrir ça marche mais je tente avec l'aide du fil de lui indiquer le no
des onglets à imprimer, et là c'est pas au point
Si ta grande bonté va jusqu'à regarder ce fil , encore merci
Gilles
Avatar
Gilles72
ET PUIS....
y a quand même un petit problème:
quand il s'agit de .doc OU .pdf, il ne les prend pas
il faut que je complète le code
Gilles