Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
924to928
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
924to928
924to928
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Aus Excel heraus PDF öffnen - Zoom

Aus Excel heraus PDF öffnen - Zoom
16.11.2007 09:39:15
Mister
Hallo
mit diesem super Makro von Tino kann man aus Excel heraus eine PDF Datei öffnen:
Option Explicit
Public Declare Function ShellExecute Lib "shell32.dll" Alias _
"ShellExecuteA" (ByVal hWnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nshowcmd As Long) As Long
Public hWnd As Long
Public Const SW_HIDE = 0 ' Versteckt öffnen
Public Const SW_MAXIMIZE = 3 ' Maximiert öffnen
Public Const SW_MINIMIZE = 6 ' Minimiert öffnen
Public Const SW_NORMAL = 1
Public Const SW_RESTORE = 9
Public Const SW_SHOWMAXIMIZED = 3
Public Const SW_SHOWMINIMIZED = 2
Public Const SW_SHOWMINNOACTIVE = 7
Public Const SW_SHOWNOACTIVATE = 4

Public Function DateiÖffnen(Aktion As String, Pfad As String, _
Ansicht As String) As Boolean
Call ShellExecute(hWnd, Aktion, Pfad, "", "", Ansicht)
End Function


Sub öffne_Datei()
'Eine beliebige Datei öffnen...
Dim Pfad As String
'Einfach den Pfad ändern und das war's....
Pfad = "C:\fehler.jpg"
DateiÖffnen "open", Pfad, SW_MAXIMIZE
End Sub


Es klapppt super, nur die PDF Datei wird bei mir mit 133% Vergrößerung dargestellt und man kann das ganze Blatt nicht sehen. Gibt es vielleicht eine Möglichkeit, dass Excel den Acrobat Reader "zwingt" die Datei nur mit 100% Vergrößerung darzustellen? Kann man außerdem von Excel heraus die Lesezeichen im Reader einschalten? Besten dank für eure Hilfe.
Gruß
Martin

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aus Excel heraus PDF öffnen - Zoom
16.11.2007 11:20:58
Tino
Hallo,
nur die PDF Datei wird bei mir mit 133% Vergrößerung dargestellt
habe mal etwas gebastelt, siehe Code unten ich hoffe es Funktioniert.
Kann man außerdem von Excel heraus die Lesezeichen im Reader einschalten?
habe ich jetzt noch nicht versucht

Option Explicit
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Public Declare Function ShellExecute Lib "shell32.dll" Alias _
"ShellExecuteA" (ByVal hWnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nshowcmd As Long) As Long
Private Declare Function WaitForInputIdle Lib "user32" ( _
ByVal hProcess As Long, ByVal dwMilliseconds As Long) As Long
Private Type PROCESS_INFORMATION
hProcess As Long
hThread As Long
dwProcessId As Long
dwThreadId As Long
End Type
Private Const NORMAL_PRIORITY_CLASS = &H20&
Private Const STARTF_USESHOWWINDOW As Long = &H1&
Private Const INFINITE As Long = -1&
Private Const WAIT_OBJECT_0 As Long = 0
Private Const WAIT_TIMEOUT As Long = &H102&
Private Const WAIT_FAILED As Long = -1&
Public Enum wsaErrors
wsaNoError = 0
wsaStartError = 1
wsaTimeOut = 2
wsaOtherError = 3
End Enum
Public hWnd As Long
Public Const SW_HIDE = 0 ' Versteckt öffnen
Public Const SW_MAXIMIZE = 3 ' Maximiert öffnen
Public Const SW_MINIMIZE = 6 ' Minimiert öffnen
Public Const SW_NORMAL = 1
Public Const SW_RESTORE = 9
Public Const SW_SHOWMAXIMIZED = 3
Public Const SW_SHOWMINIMIZED = 2
Public Const SW_SHOWMINNOACTIVE = 7
Public Const SW_SHOWNOACTIVATE = 4
Public Function DateiÖffnen(Aktion As String, Pfad As String, _
Ansicht As String) As Boolean
Call ShellExecute(hWnd, Aktion, Pfad, "", "", Ansicht)
End Function
Sub öffne_Datei()
'Eine beliebige Datei öffnen...
Dim Pfad As String, Anzeige As String
'Einfach den Pfad ändern und das war's....
Pfad = "C:\Seite 105.pdf"
DateiÖffnen "open", Pfad, SW_MAXIMIZE
Anzeige = "1" 'Anzeige in PDF (siehe in PDF Anzeige)
Pfad = "[" & Right(Pfad, Len(Pfad) - InStrRev(Pfad, "\")) & "]"
Call Anzeige_100(Pfad, Anzeige)
End Sub
Sub Anzeige_100(datei As String, Anzeige As String)
Dim Zähler As Long
Prüfe_Nochmal:
If Prüfe(datei) = False Then 'hier Titel des Fenster eingeben der nach _
Programmende angezeigt wird
Sleep (1000) 'warte mit Prüfung 100 Millisekunden
Zähler = Zähler + 1
If Zähler > 5 Then GoTo Anwendungsfehler: 'nach 100 * 100 Millisekunden abbruch der _
Schleife
GoTo Prüfe_Nochmal
End If
Sleep (1000)
Application.SendKeys "^(" & Anzeige & ")"
Exit Sub
Anwendungsfehler:
AppActivate "Microsoft Excel"
MsgBox "Konnte Anwendung nicht finden"
End Sub
Function Prüfe(Fenster As String) As Boolean
On Error GoTo fehler
AppActivate Fenster
Prüfe = True
Exit Function
fehler:
Prüfe = False
End Function


Gruss
Tino

Anzeige
AW: Hilfstext ist noch falsch!
16.11.2007 14:01:00
Tino
Hallo,
die hilfstexte habe ich nicht richtig angepasst. sorry

so ist es richtig:
Sleep (1000) 'warte mit Prüfung 1000 Millisekunden
Zähler = Zähler + 1
If Zähler > 5 Then GoTo Anwendungsfehler: 'nach 6 * 1000 Millisekunden Abbruch


Gruss
Tino

AW: Lesezeichen!
16.11.2007 17:26:00
Tino
Hallo,
mit dem Lesezeiche find ich keine Lösung!
Kann zwar Lesezeichen mit F5 aus und an schalten,
aber den Zustand kann ich von Excel aus nicht prüfen!
Gruss
Tino

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige