Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
120to124
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
120to124
120to124
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bitte Hilfe für Ausdruck von Dokumenten aus Excel

Bitte Hilfe für Ausdruck von Dokumenten aus Excel
14.05.2002 12:10:46
Klaus-Dieter
Hallo Zusammen,

kann mir jemand zur folgenden Thematik Hilfestellung geben?
Ich möchte aus Excel (VBA) über eine Drucksteuerung Word-Dokumente ausdrucken, die nach bestimmten Kriterien in bestimmten
Verzeichnissen gesucht werden. Eine Routine zum Drucken habe ich,nur ist mein Problem, dass die ausgedruckten Dateien danach direkt gelöscht werden sollen, da die Rechnerleistung zu schnell ist, kommt natürlich eine Fehlermeldung, dass das Dokument nicht gelöscht werden kann. Ich habe es zwar mit einem Timer versucht,nur sind die Ausdruckzeiten (durch Aufwärmphase oder Warteschlangen) eben unterschiedlich. Wer kann mir hier eine einfache Lösung anbieten? Es wäre mir auch egal, wenn ich für jedes Dokument per Makro Word öffnen und schließen müsste.
Für hilfreiche Tipps wäre ich sehr dankbar.

MfG

Klaus-Dieter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Bitte Hilfe für Ausdruck von Dokumenten aus Excel
14.05.2002 12:31:18
MRR
Also auf die Schnelle würde ich folgendes Vorgehen wählen:
Die erforderlichen Dateiname in ein Array einlesen.
Den Ausdruck der Daten aus diesem Array vornehmen.
Dann in einer Schleife die Löschungen vornehmen:

Hilft Dir das irgendwie weiter?
Matthias
AW: Datenfeld auch als Stringvariable möglich?
14.05.2002 12:42:34
Klaus-Dieter
Danke erstmal Matthias, der Ansatz ist nicht schlecht, nur will ich ja eine Datei löschen, nich ein Feld. Kann ich denn der Variable Datenfeld auch den zu löschenden Dateinamen zuweisen, um die gewünschte Datei zu löschen? Ich müsste sie halt als String definieren.

Klaus-Dieter

Re: AW: Datenfeld auch als Stringvariable möglich?
14.05.2002 12:51:32
MRR
Ich ging davon aus, dass sich die Dateinamen als Strings bereits in dem Datenfeld befinden. So würde Kill Datenfeld(15) die Datei löschen (oder es versuchen), die den Namen trägt, der im 15. (oder 16.) Element des Arrays angegeben. Wir löschen hier also KEINE DATENFELDER!
Vielleicht gibst Du uns noch mehr Infos, wo sich welche Dinge befinden. Ich kann erst wieder gegen Abend ein Statement abgeben...
Matthias
Anzeige
AN MATTHIAS -mehr Info von mir-
14.05.2002 13:14:37
Klaus-Dieter
Hallo Matthias,

erstmal wieder recht vielen Dank für die Mithilfe. Ich erkläre die Thematik nochmal genauer:
Ich lese aus einem Verzeichnis die vorhandenen Dateien aus. Beispielsweise liegen 3 Dateien
Vor, dann sollen diese Dateien in einen jeweils separaten Ordner verschoben werden, der Ordnername wird aus dem Dateinamen ausgelesen und in einem Archiv-Verzeichnis erzeugt,
in diesen Ordner sollen die Dateien verschoben werden. Vor diesem Akt sollen die Dokumente
ausgedruckt werden. Die Dateien suche ich mit "For I = 1 To .FoundFiles.Count".

Gruß Klaus-Dieter

Re: AN MATTHIAS -mehr Info von mir-
16.05.2002 06:21:35
MRR
Schick mir doch bitte mal die Datei zu, dann schaue ich es mir daheim in Ruhe an, melde mich wieder und poste den relevanten Code auch hier.
Bis später, Matthias
Anzeige
Re: Matthias -> Quellcode
16.05.2002 08:10:24
Klaus-Dieter
Hi Matthias,

da ich nicht deine E-Mail-Adresse habe, zeige ich Dir hier den Code von dem einem Modul, in dem der Druckvorgang gestartet werden soll:

Sub Suchen()

Dim DateiName As String
Dim PortID As String
Dim BenGrp As String
Dim PfadUndDatei As String
Dim Jahr As String
Dim Monat As Double
Dim AMonat As String
Dim Tag As Double
Dim ATag As String
Dim BefDat As String
Dim pfad As String
Dim FBEPfad As String
Dim QuellDatPGP As String
Dim QuellDatDOC As String
Dim Zielpfad As String
Dim Wahl As String
Dim Letzte As Long
Dim datei As String
Dim PN As String
'Dim sFileName As String
'Dim wApp As New Word.Application
'Dim Start As Single

PN = "TRANSFER-TOOL"
datei = "Transfer-Tool.xls"
Set FBESuche = Application.FileSearch
PfadLZ = "J:\Projekte\Land_BW\LVN III Betrieb\Laufzettel\3.) Laufzettel"
pfad = "J:\Projekte\Land_BW\LVN III Betrieb\Laufzettel\"
FBEPfad = "J:\Projekte\Land_Bw\LVN III Betrieb\Laufzettel\4.) Funktionsbereitschaftserklärung\"
Jahr = Year(Date) 'Datum für Betreff generieren
Monat = Month(Date)
If Monat < 10 Then
AMonat = "0" & Monat
End If
Tag = Day(Date)
If Tag < 10 Then
ATag = "0" & Tag
Else
ATag = Tag
End If
Jahr = Right(Jahr, 2)
BefDat = Jahr & AMonat & ATag

With FBESuche
.LookIn = "J:\Projekte\Land_Bw\LVN III Betrieb\Laufzettel\4.) Funktionsbereitschaftserklärung"
.FileName = "FBE*.doc.pgp"
If .Execute > 0 Then
MsgBox "Es wurde(n) " & .FoundFiles.Count & " FBE(s) gefunden, die zur Versendung bereitstehen.", vbInformation, PN
For I = 1 To .FoundFiles.Count
.FileName = .FoundFiles(I)
PfadUndDatei = .FoundFiles(I)
DateiName = .FileName
PortID = Right(DateiName, 21)
BenGrp = Left(PortID, 4)
PortID = Right(PortID, 16)
PortID = Left(PortID, 8)
MkDir pfad & PortID
QuellDatPGP = "FBE_" & Jahr & AMonat & ATag & "_" & BenGrp & "_" & PortID & ".doc.pgp"
QuellDatDOC = "FBE_" & Jahr & AMonat & ATag & "_" & BenGrp & "_" & PortID & ".doc"
eMailAusExcelVersenden.eMailVersenden BefDat, BenGrp, PortID, PfadUndDatei
Zielpfad = pfad & PortID & "\"
FileCopy FBEPfad & QuellDatPGP, Zielpfad & QuellDatPGP
FileCopy FBEPfad & QuellDatDOC, Zielpfad & QuellDatDOC
' sFileName = FBEPfad & QuellDatDOC
' With wApp
' .Documents.Open sFileName
' .ActiveDocument.PrintOut
' Start = Timer ' Anfangszeit setzen.
' Do While Timer < Start + 40
' DoEvents ' Steuerung an andere Prozesse
' Loop
' .Quit
' End With
' Set wApp = Nothing
Kill FBEPfad & QuellDatPGP 'VORSICHT mit diesem Befehl!
Kill FBEPfad & QuellDatDOC 'löscht ohne zu fragen!
Workbooks(datei).Sheets(1).Activate
Letzte = ActiveSheet.UsedRange.Rows.Count
Workbooks(datei).Sheets(1).Cells(Letzte + 1, 1).Value = PortID
Workbooks(datei).Sheets(1).Cells(Letzte + 1, 2).Value = ATag & "." & _
AMonat & "." & Jahr
Workbooks(datei).Sheets(1).Cells(Letzte + 1, 3).Value = QuellDatDOC
Workbooks(datei).Sheets(1).Cells(Letzte + 1, 4).Value = QuellDatPGP
Next I
MsgBox "Es wurde(n) " & .FoundFiles.Count & " eMail(s) verschickt.", vbInformation, PN
Wahl = MsgBox("Sollen die Laufzettel jetzt automatisch in die Archiv-Ordner verschoben werden?", vbYesNo, PN)
If Wahl = vbYes Then
LaufzettelSuchenAblegen.Laufzettel
End If
MsgBox "Vergessen Sie nicht die FBEs und Laufzettel auszudrucken!", vbInformation, PN
Else
MsgBox "Es liegen keine FBEs zur Versendung vor!" & Chr(13) & Chr(13) & _
"Info:" & Chr(13) & Chr(13) & _
"Evtl. haben Sie vergessen, die Dateien zu verschlüsseln.", vbCritical, PN
End If
Workbooks(datei).Save
End With

End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige