Hallo Animal,
Nu begrijp ik volledig wat je bedoeling is.
Soms krijgen helpers zo weinig basisinformatie dat er veel tijd verloren gaat alvorens we gericht kunnen helpen.
Voor ik er verder op in ga zou ik je alvast dit willen meegeven, gewoon als goede raad. Je doet er mee wat je wilt.
Zelf zou ik nooit Excel-facturen naar een klant sturen. De klant kan een andere Office-versie hebben die niet compatibel is met die van jou.
mogelijk gebruiken ze een Open-source versie die xls-bestanden opent, maar niet correct. Ook de uitlijning en dergelijke kan de klant in de problemen brengen als hij wilt afdrukken. Hij kan ook jou bestand aanpassen, een datum veranderen, een bedrag enzovoorts, waardoor je later, bij discussie zal moeten aantonen dat jou versie correct is. Bij een PDF-bestand is dit niet zo gemakkelijk, en je kan een PDF gemakkelijker vergrendelen, READ-ONLY maken. Bovendien opent elke PDF-Reader jou PDF-bestand.
Als toemaat kan je in je factuur een verwijzing met link zetten naar een gratis PDF-reader, waarmee de klant een compatibel PDF programma kan downloaden, moest hij dit niet hebben.
Wat je probleem betreft: Laat ons stellen dat je excel-factuur-bestand op de NAS staat (laten we aannemen dat de NAS X:\ is), in de map X:\Facturen\2017\factuur.xls
Als je vanaf de laptop het bestand opent, of je opent het bestand vanaf de desktop, mag normaal toch geen verschil maken. Je gaat met beide PC's toch naar hetzelfde bestand, toch?
Als je de macro uitvoert, en het bestand omzet naar naar PDF, sla je dit bestand ook op in de NAS, bijvoorbeeld in de map X:\FactuurMail\2017\factuur.PDF
Je kan hier normaal geen problemen mee krijgen.
Zie je toch een andere letter voor de betreffende partitie op je NAS als je via de laptop of de desktop het bestand benaderd, dan kan je in de macro een code toevoegen om, in geval van een foutmelding, door te gaan naar een tweede opdracht met een correct partitie-label.
Sub Mail()
Dim FacName As String, Jaar As String
FacName = ActiveSheet.Range("Q9")
Jaar = ("2017-")
ActiveSheet.Range("A1:B20").ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
"F:\FactuurMail\Oplossing 2017\" & Jaar & FacName & ".pdf", IgnorePrintAreas:=False, OpenAfterPublish:=True
On Error Resume Next
ActiveSheet.Range("A1:B20").ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
"X:\FactuurMail\Oplossing 2017\" & Jaar & FacName & ".pdf", IgnorePrintAreas:=False, OpenAfterPublish:=True
On Error Resume Next
End Sub
Indien de macro geen map F:\FactuurMail\ vindt, zal hij de verder gaan naar de volgende opdracht, en X:\FactuurMail\ kiezen.
Helpt dit?
SoftAid