Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

PDF Dateien per Excel VBA drucken und als Mail Anhang versenden
#11
Hallöchen,

hier mal der Code zum Adobe schließen. Die API's bitte mit oben einfügen.

Code:
'API, hier verwendet fuer Adobe Reader schliessen
Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" ( _
    ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" ( _
    ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

Sub Close_AdobeReader()
'Variablendeklarationen
Dim strName As String, hwnd As Long
Const WM_CLOSE = &H10
'Name Adobe Window
strName = "AcrobatSDIWindow"
'Window finden
hwnd = FindWindow(strName, vbNullString)
'wenn gefunden, dann beenden
If hwnd Then SendMessage hwnd, WM_CLOSE, 0, ByVal 0&
End Sub

Die Schleife kannst Du so verlängern:

Do While Cells(iCnt, 1).Value <> "" Or Cells(iCnt, 3).Value <> ""
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#12
Hallo Andre,

habe nun den Code entsprechend angepasst und es funktioniert perfekt!! Vielen herzlichen DANK für deine Hilfe! Thumbsupsmileyanim Thumbsupsmileyanim Thumbsupsmileyanim

Das mit dem Acrobat Reader schließen habe ich wieder ausgeschaltet, da sonst der Druck abgebrochen wird! Aber ist nicht schlimm, das Fensterchen kann ich manuell zu machen! :)


Vielen lieben Dank nochmals & einen schönen Tag!

LG
Alexandra
Antworten Top
#13
Hallo Andre,

noch eine Frage, wenn ich eine Lieferscheinnummer und eine Rechnungsnummer in A6 bzw C6 habe und dann in A7 und C7 leer dann würde der Code stoppen obwohl ind A8 und C8 zB noch eine weitere Nummer stehen könnte! Wie kann ich vermeiden dass so was passiert? zB. bei Eingabe in A8 obwohl A7 leer ist, dass automatisch die Eingabe in A7 geschoben wird?


Danke
Antworten Top
#14
sofern du die schleife mit der Abbruchbedingung  "Abbruch wenn Zelle leer ist" noch benutzt, dann sollte dies evtl. geändert werden.  

Alternativ kann man ja für die Schleife die letzte benutzte Zeilennummer ermitteln und  diese als Abbruchkriterium nutzen. 
Wenn du in der Schleife dann auf eine leere Zelle stößt, einfach auslassen.

Noch eine andere Idee. Über den Autofilter leere Zeilen ausblenden und nur den sichtbaren Bereich abarbeiten.
Antworten Top
#15
Hallöchen,

Du kannst auch bei Do While zusätzlich das verwenden:

Do While ( ... Or ... ) And iCnt < ActiveSheet.UsedRange.Row

(die bisherigen Bedingungen einklammern)
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#16
Hallo Andre,


funktioniert sehr gut! Vielen lieben Dank für dein super Hilfe!

LG
Alexandra
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste