返回列表 上一主題 發帖

*.exe 欲取得本身之檔名應如何下語法

*.exe 欲取得本身之檔名應如何下語法

請教諸位先進:
Sub Main()
    Dim objXLApp
    Dim objXLBook
     Dim fso3
    Set fso3 = CreateObject("Scripting.FileSystemObject")
    GetAn3 = fso3.GetbaseName(myself)
    MsgBox GetAn3
  End Sub
以上轉為*.exe   欲取得本身之檔名 myself應如何下語法

本帖最後由 yangjie 於 2010-11-5 23:53 編輯

感謝 Min 大大
已在VB區讓您給解決了  f1 = App.EXEName  f1 就是BaseName
以下全文供大家參考 轉成執行檔*.exe後可以開同檔名的*.xls
不用再去理會安全性層級問題
Sub Main()
    Dim f1
    f1 = App.EXEName
    Dim fso, f As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f = fso.GetFile(f1 & ".xls")
    Dim n
    n = fso.GetParentFolderName(f.Path)
    Set objXLApp = CreateObject("Excel.Application")
    objXLApp.Visible = True
    Set objXLBook = objXLApp.Workbooks.Open(n & "\" & f1 & ".xls")
    Set objXLBook = Nothing
    Set objXLApp = Nothing
    Set fso = Nothing
    Set n = Nothing
    Set f = Nothing
End Sub

TOP

本帖最後由 yangjie 於 2010-11-6 11:45 編輯

回復 4# Min


    不好意思讓Min兄見笑了、、、
其主要省下敎對PC不很熟有關Macro的事,
以前也是用VBS處理。
一旦改檔名,則VBS內容也要改,才想用*.exe
順道請教1:
如何作法?  讓他人非得用*.exe才開得了我的*.xls   
否則會application.quit

順道請教2:
以前用過*.xls  去設定 Excel程式   想在*.exe內執行以下"設定Excel"
VB應如何寫法
Private Sub Workbook_Open()
    yangan = GetSetting(appname:="yangApp", section:="Startup1", key:="使用確認", Default:=88)
    SaveSetting "yangApp", "Startup1", "使用確認", yangan

   Application.Quit
End Sub

TOP

回復 6# Min


    Replace(Wscript.ScriptFullName, Right(Wscript.ScriptFullName, 4), ".xls")
可否先取得  am=Wscript.ScriptFullName
                  Replace(am, Right(am, 4), ".xls")

我嘗試看看    謝謝

TOP

        靜思自在 : 並非有錢魷是快樂,問心無愧心最安。
返回列表 上一主題