napisał: fiskars postów: 3
umieszczony: 21 marca 2012 19:30
edytowany: 21 marca 2012 19:31
|
|
okazało się, że serwer nie trawił senkeysa.
Próbuję zrobić to w inny sposób:
plik = "\\serwer5\HOME$\" & Range("h25") & "\dokumenty\" & [b6] & "_" & [d6] & "_" & [c9] & "_" & [d9] & "_" & [d29] & ".pdf"
ActiveWindow.SelectedSheets.PrintOut copies:=1, ActivePrinter:= _
"CutePDF Writer na Cpw2", collate:=True, printtofile:=True, prtofilename:=plik
polecenie tworzy pdf, ale nie można go otworzyć. Czytałem, że tym sposobem można zapisać do ps a później przkonwetować do pdf.
Nie mam pojęcia jak to zrobić (używam CutePDF i Ghostscript).
chcę z tego zrobić całkowity automat, a nie wiem jak ;(
Proszę o pomoc |
|
napisał: fiskars postów: 3
umieszczony: 20 marca 2012 20:35
edytowany: 20 marca 2012 20:38
|
|
znalazłem mały błąd w kodzie (przez moje kombinowanie). Prawidłowy zapis SendKeys`a jest: SendKeys lokalizacja & zapis & "~", True
generalnie makro zapisuje sobie ścieżkę w L4 i widać, że to działa bo ścieżka i nazwa pliku jest prawidłowa
Nie próbowałem z range i w sumie nie wiem czy to pomoże (niemniej jednak spróbuje i dam znać-tylko niestety jutro bo terminal mam w pracy a na lapku w sumie to nie mam co próbować bo tu wszystko działa).
Problem jest szczególnie z lokalizacja - bo tutaj bardzo "ścięta" jest ścieżka.
jak zrobię SendKeys zapis & "~", True
to działa, ale zapisuje gdzie popadnie tzn. tam gdzie ostatnio było zapisywane a ja chcę aby była sprecyzowana ścieżka |
|
napisał: Trebor postów: 1209
umieszczony: 20 marca 2012 20:21
|
|
Czy coś zmieni jeśli zamiast np. [C9] wpiszesz Range("C9") ? |
|
napisał: fiskars postów: 3
umieszczony: 20 marca 2012 20:08
|
|
Witam,
podczas próby wydrukowania dokumentu do pdf wszystko niby się udaje, ale nie może automatycznie zapisać ścieżki i nazwy.
zapisuje np. ty\[b6] & "_" & [d6] & "_" & [c9] & "_" & [d9] & "_" & [d26] lub
jeżeli użytkownik nazywa się marcin.iksinski (h25 - username) zapisuje
n.iksinski\dokumenty\[b6] & "_" & [d6] & "_" & [c9] & "_" & [d9] & "_" & [d26]
generalnie nie mogę dojść do ładu, żeby plik zapisał się:
\\serwer5\HOME$\marcin.iksinski\dokumenty\b6_d6_c9_d9_d26.pdf
gdzie wiadomo, że b6 itp. to dane z wierszy.
Sub Makro1()
Range("L4").Select
Calculate
Activewindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"CutePDF Writer", Collate:=True
lokalizacja = "\\serwer5\HOME$\" & [h25] & "\dokumenty\"
zapis = [b6] & "_" & [d6] & "_" & [c9] & "_" & [d9] & "_" & [d26]
newHour = Hour(Now())
newMinute = Minute(Now())
newSecond = Second(Now()) + 5
waitTime = TimeSerial(newHour, newMinute, newSecond)
Application.Wait waitTime
SendKeys "\\serwer5\HOME$\" & [h25] & "\dokumenty\" & [b6] & "_" & [d6] & "_" & [c9] & "_" & [d9] & "_" & [d26] & "~", True
End Sub
bardzo proszę o pomoc.
aaa... i jeszcze jedna dziwna sprawa - na kompach stacjonarnych i laptopach powyższy kod działa bez zarzutu, problemy zaczynają się jak próbuję zapisać na terminalu. |
|
wstecz 1 dalej wszystkich stron: 1
|