Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
844to848
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
844to848
844to848
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA - Fehler bei String, left, mid

VBA - Fehler bei String, left, mid
12.02.2007 10:10:25
Uwe
Hallo,
unten stehendes Makro funktioniert zwar in einer Testdatei, in der eigentlichen Datei jedoch nicht.
Folgende Fehlermeldung erscheint bei TempName = String(1024, 0)'Einstellung des Standdarddruckers
"Projekt oder Bibliothek nicht gefunden".
Die gleiche Meldung erhalte ich bei "left" und "mid", wenn ich String bzw. left deaktiviert habe.
Ich habe das Makro aus der Testdatei 1 zu 1 in mein Tool kopiert. Daher weiss ich jetzt auch nicht, woran es liegen kann. Auch in einem anderen Tool arbeite ich mit diesem Makro und es funktioniert. Da mein Tool rd. 4 MB groß ist und auch gezippt nicht als link herunterzuladen ist, kann ich das Tool leider nicht einstellen.
Ich hoffe, Ihr könnt mir dennoch einen Tipp geben, woran es liegen kann.
Gruß
Uwe
Declare

Function GetProfileString Lib "kernel32" Alias "GetProfileStringA" _
(ByVal lpAppName As String, ByVal lpKeyName As String, ByVal lpDefault As String, _
ByVal lpReturnedString As String, ByVal nSize As Long) As Long
Declare 

Function GetProfileSection Lib "kernel32" Alias "GetProfileSectionA" _
(ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Long) As Long

Sub PDF()
On Error GoTo Ende
Application.ScreenUpdating = False
'nicht benötigtes Tabellenblatt ausblenden
Tabelle11.Visible = False
'alle anderen Tabellenblätter auswählen
Dim ii As Integer
For ii = 1 To Sheets.Count
If Sheets(ii).Visible = True Then
Sheets(ii).Select False
End If
Next ii
'PDF-Drucker einstellen und PDF-Datei erstellen
Application.ActivePrinter = "eDocPrinter PDF Pro auf Ne01:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"eDocPrinter PDF Pro auf Ne02:", Collate:=True _
'nicht benötigtes Tabellenblatt wieder einblenden
Tabelle11.Visible = True
Tabelle11.Select
Dim Drucker As String
Drucker = Application.ActivePrinter
Application.ActivePrinter = Drucker
'Standarddrucker wieder einstellen
Dim TempName As String
Dim DeviceNr As Long
Dim GetDefaultPrinter As String
TempName = String(1024, 0)
DeviceNr = GetProfileString("windows", "device", 0&, TempName, 1024)
If DeviceNr > 0 Then
GetDefaultPrinter = Left(TempName, InStr(TempName, ",") - 1) & " auf " & Mid(TempName, InStr(TempName, ":") - 4, 5)
End If
Application.ActivePrinter = GetDefaultPrinter
Ende:
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Fehler bei String, left, mid
12.02.2007 11:18:35
PeterB
Hi Uwe,
probier es bei den angemeckerten Ausdrücken mal mit Aufführen aller Klassen, also
statt Left(..., ...) eben VBA.Strings.Left(..., ...) .
Ich weiß zwar nicht warum, aber bei geht's dann wieder.
Gruß
Peter
AW: VBA - Fehler bei String, left, mid
12.02.2007 16:43:41
Uwe
Hallo Peter,
Klasse, hat funktioniert.
Dennoch frag ich mich, warum es bei dem anderen Tool auch ohne den Zusatz VBA funktioniert hat?
Vielen Dank.
Gruß
Uwe
Anzeige

249 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige