• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Padnamen in macro

Status
Niet open voor verdere reacties.

fotofons

Gebruiker
Lid geworden
2 aug 2007
Berichten
110
Ik heb in een Ecel-macro op mijn Usb-stick (drive D) bv. staan: ChangeFileOpenDirectory "D:\opslag\formulieren\"

Stop ik de Usb-stick in een andere PC dan krijgt deze een andere drijfletter en loopt het macro dus niet meer. Op internet heb ik gezocht en uitgetest om de driveletter vast te zetten voor deze Usb-stick. Tot nog toe tevergeefs. Is er een manier om dit binnen de macro te regelen?
 
Je kan het misschien omdraaien?
activeworkbook.Path
Haalt de folder op vanwaar het huidge workbook geopent is.
 
Code:
ChangeFileOpenDirectory "D:\opslag\formulieren\"
    ActiveDocument.SaveAs2 FileName:= _
        "D:\opslag\formulieren\" & bestandsnaam & "-word1.docx" _
zou dan worden:
Code:
activeworkbook.Path
    ActiveDocument.SaveAs2 FileName:= _
        bestandsnaam & "-word1.docx" _

of

Code:
activeworkbook.Path
    ActiveDocument.SaveAs2 FileName:= _
       path & bestandsnaam & "-word1.docx" _
 
Laatst bewerkt door een moderator:
Meer iets van:
Code:
 ActiveDocument.SaveAs2 FileName:= _
activeworkbook.Path & "\" &  bestandsnaam & "-word1.docx" _
 
Laatst bewerkt door een moderator:
fso (file scripting object) kan het ook mee, maar in excel werkt de activeworkbook prima
 
Meer iets van:
ActiveDocument.SaveAs2 FileName:= _
activeworkbook.Path & "\" & bestandsnaam & "-word1.docx" _

Ik heb nu staan (na enige aanpassing, ik had en stukje uit een worddocument ipv uit een excel )
Code:
    ActiveWorkbook.SaveAs2 FileName:= _
    ActiveWorkbook.Path & "\naam.xlsm" _
         FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

En krijg een compileerfout.
 
Laatst bewerkt door een moderator:
Er staat ActiveWorkbook.SaveAs2 in plaats van ActiveWorkbook.SaveAs
Vandaar de compilermelding.
 
Als je nou ook eens verteld welke melding...
 
Vervolgens wordt er in de code ook een regel rood gemaakt als het goed is.
 
Ik heb nu staan (na enige aanpassing, ik had en stukje uit een worddocument ipv uit een excel )
ActiveWorkbook.SaveAs2 FileName:= _
ActiveWorkbook.Path & "\naam.xlsm" _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

En krijg een compileerfout.
Is ergens in het kopieren of opdelen van de opdracht een komma weggevallen... Elke parameter moet gescheiden worden door een komma

Zo dus:
Code:
  ActiveWorkbook.SaveAs2 FileName:= _
    ActiveWorkbook.Path & "\naam.xlsm" _
         ,FileFormat:=xlOpenXMLWorkbookMacroEnabled _
, CreateBackup:=False

De komma voor FileFormat was weg.
 
Laatst bewerkt door een moderator:
alle 3 regels werden rood gemaakt. Probleem is nu helemaal opgelost. Met dank aan alle bijdragen. Nogmaals DANK.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan