Excel VBA mentés PDF-be probléma

Excel VBA mentés PDF-be probléma
2017-01-16T11:21:44+01:00
2017-01-16T12:15:24+01:00
2022-10-15T22:11:22+02:00
vinidis86
Sziasztok!

Nem olyan régen kezdtem el a VBA programozást egy munkahelyi alkalmazás miatt, ezért egy kis segítséget szeretnék kérni.
Az adott munkalapot szeretném PDF-be kimenteni úgy, hogy a fájl neve tartalmazza egy adott cella nevét és az aktuális dátumot.

Ez itt a kódom:
Sub MentésPDF()

Dim strFilename As String
Dim rngRange As Range

Set rngRange = Worksheets("Jegyzőkönyv").Range("D6:E6")

strFilename = rngRange.Value & Format(Now(), "yyyymmdd\_hhmm")

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    "Q:\MEO\Keszaru_ellenorzes" & strFilename & ".pdf" _
    , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
    :=False, OpenAfterPublish:=False

End Sub

A fájlnévre állandóan hibát jelez (5. sor). Mivel még könyvek alapján dolgozom, ezért sajnos nem jöttem rá a hibára. Szeretném  megkérdezni, hogy miért nem működik ez a kódsor.
Köszönöm.
Mutasd a teljes hozzászólást!
Lehet a range nem tetszik neki..

'Set rngRange = Worksheets("Jegyzőkönyv").Range("D6:E6") 'strFilename = rngRange.Value & Format(Now(), "yyyymmdd\_hhmm") strFilename = Worksheets("Jegyzőkönyv").cells(4,6) & Worksheets("Jegyzőkönyv").cells(5,6) & Format(Now(), "yyyymmdd\_hhmm")
Most lehet elnéztem valamit, de a lényeg, hogy a tartomány az egy objektum, nem szöveg. Példám alapján kell összefűznöd.

Ehhez hasonló talán jobban átlátható:

Még jobb lenne, ha a fájlnevet TELJESEN összefűznéd, mielőtt berakod a 'Filename:=' után, azaz:

strFilename ="Q:\MEO\Keszaru_ellenorzes" strFilename = strFilename & Worksheets("Jegyzőkönyv").cells(4,6).text & Worksheets("Jegyzőkönyv").cells(5,6).text strFilename =strFilename & Format(Now(), "yyyymmdd\_hhmm") & ".PDF" Msgbox strFilename


Ha ez láthatóan jó akkor jöhet:

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= strFilename , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _ :=False, OpenAfterPublish:=False
Könnyebb ellenőrizni, meg talán átláthatóbb, de a fő gond a range volt. Persze lehetne a range.cells is, de szerintem nem kell. Elképzelhető, hogy valahol elgépeltem, de a lényeg szerintem ez.
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd