Get a specific Program files folder

  • Thread starter Thierry Paradis
  • Start date
T

Thierry Paradis

Hi!

I made a Deploy project in VS2003. The setup copy a xla and a xlt a specific
Program files folder. After the copy, i want to execute a .vbs that will
copy and register the xla and the xlt. My problem is to get my new program
files folder. Is there a vbs code that i can execute to get it?

Thanks,

Thierry Paradis.
 
M

Miyahn

I made a Deploy project in VS2003. The setup copy a xla and a xlt a specific
Program files folder. After the copy, i want to execute a .vbs that will
copy and register the xla and the xlt. My problem is to get my new program
files folder. Is there a vbs code that i can execute to get it?

This script shows the folder path where the script is located.

' FileName : Setup.vbs
With CreateObject("Shell.Application")
MsgBox .NameSpace(0).ParseName(WScript.ScriptFullName).Parent.Items.Item.Path
End With

I use the following script to copy AddIn to default AddIns folder.

' FileName : SetAddIn.vbs
Option Explicit
Const ssfAPPDATA = &H1A: Dim SA, DstF, SrcF, Ans
Ans = MsgBox("Copy AddIn to default AddIns folder", vbOKCancel)
If Ans <> vbOK Then WScript.Quit
Set SA = CreateObject("Shell.Application")
Set DstF = SA.NameSpace(ssfAPPDATA).ParseName("Microsoft").GetFolder
Set SrcF = SA.NameSpace(0).ParseName(WScript.ScriptFullName).Parent
Call CopyAddins(DstF, SrcF)
MsgBox "Completed."
'
Sub CopyAddins(Dst, Src)
Dim aItem
For Each aItem In Src.Items
If aItem.IsFolder Then
Call CopyAddins(Dst, aItem.GetFolder)' recursive call
Else
Select Case LCase(Right(aItem.Name, 4))
Case ".xla", ".ppa"
Dst.ParseName("AddIns").GetFolder.CopyHere aItem, 16
Case ".dot"
Dst.ParseName("Templates").GetFolder.CopyHere aItem, 16
End Select
End If
Next
End Sub
 
G

Guest

A simpler way you could try:-
If the path to your folderis not going to change, then vba code
ChDir FolderPath - will set your folder as the current folder, where
"FolderPath" is the full path name, including the last \.
Then use Application.GetOpenFilename(...) to display and select the file
you want to import.
If your path is not fixed, but relative to your XL file location, then you
will need to extract the current path from the XL formula
Cell("filename",A1), and concatenate your file path with that.

HTH
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top