Just nu i M3-nätverket
Gå till innehåll

Excel VBA: hitta källan till xlt-filen?


Oskar Hansson

Rekommendera Poster

Oskar Hansson

Jag vill få en Excel-applikation (i form av en mall/xlt) att leta efter en ini-fil i mappen där mallen öppnades ifrån.

 

Finns det något sätt att med VBA ta reda på sökvägen varifrån en xlt-fil öppnades? Dvs. ungefär som "ActiveWorkbook.Path". Problemet är ju att det öppnas en ny arbetsbok som inte än har en sökväg.

 

//Oskar

____________________________________________________

 

Simplify Life - Everything should be made as simple as possible

 

Länk till kommentar
Dela på andra webbplatser

Nä, detta vet jag inte...

 

Sätt att fixa det på kanske finns dock, utan att veta sökvägen.

 

• Ini-data. Kan du inte infoga detta på ett dolt blad i din mall?

• Sökväg, hårdkoda eller leta i "kända" installationsmappar

• Hämta ini-data från annat håll, kanske webben/nätverk?

 

 

ed: Excel-applikationens mallsökväg får man fram via

Application.TemplatesPath

kanske kan hjälpa?

eller

Application.NetworkTemplatesPath

 

ed2: Ogillar ExpertsExchange men ibland...

http://www.experts-exchange.com/Software/Office_Productivity/Office_Suites/MS_Office/Excel/Q_20776901.html?eeSearch=true

eller

http://www.xtremevbtalk.com/archive/index.php/t-211949.html

ja, allt beror på hur mallen öppnas tycks det

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

 

 

[inlägget ändrat 2009-02-25 09:24:25 av Monshi]

 

[inlägget ändrat 2009-02-25 09:33:31 av Monshi]

Länk till kommentar
Dela på andra webbplatser

Oskar Hansson

Jag har också hittat den där tråden i ExpertExchange, men jag ville inte registrera mig där...

 

CurDir verkar bara returnera någon temporär mapp och inte själva källmappen för min xlt-fil.

 

Jag tror att bästa lösningen är att lägga in informationen i ett Excelark som du föreslog.

 

Jag har redan ett "Settings"-ark med ändringsbara sökvägar till diverse filer och mappar. Anledningen till att den här listan blev en ini-fil var nog mest för att jag vid tillfället lärde mig att fylla rullistor från textfiler... Hoppades bara på att det fanns något enkelt sätt som jag inte visste om.

 

//Oskar

____________________________________________________

 

Simplify Life - Everything should be made as simple as possible

 

Länk till kommentar
Dela på andra webbplatser

Fasiken, såg lösningen förut men nu är den dold. Nåja, slutförslaget/lösningen där var att det kan vara en bättre idé spara den som en add-in då man kan ha bättre koll på resurser med dessa. Fast det är ju en annan sak än mallar så kanske det inte passar?

 

men - om det är en statiskt ini-fil, lika för alla så att säga, så finns det ingen anledning att ha de data i en egen textfil. Fylla rullistor från blad är enkelt.

 

edit:

Ah, om jag går via Google så ser jag den, länken ovan duger visst inte. Sista svarat var alltså:

It really is a no brainer. You create an Excel workbook, write your code in there and then save as .xla. The advantage is that it can be open, but the user will not see the spreadsheet itself. You can add a toolbar with a button, which then clicked will open your template and do whatever is needed. In fact I would probably move the code from the template to the xla, keeping only the formats and ranges in the template.

 

The xla can also be set to open then the user opens Excel, but will not run until that button is clicked.

http://www.google.se/search?source=ig&hl=sv&rlz=&=&q=excel+vba+template+path&btnG=Google-s%C3%B6kning&meta=lr%3D&aq=f

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

 

[inlägget ändrat 2009-02-25 11:35:40 av Monshi]

 

[inlägget ändrat 2009-02-25 11:35:55 av Monshi]

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...