Board logo

標題: [發問] GetBaseName(Me) [打印本頁]

作者: yangjie    時間: 2010-11-5 10:08     標題: GetBaseName(Me)

本帖最後由 yangjie 於 2010-11-5 17:28 編輯

請教版大或各位先進:
  應如何取得  視窗執行檔   檔名
     am=GetBaseName(Me)
     MSGBOX   am  
      ' 傳回 VB5.EXE 的 VB5
    錯誤: Me 關鍵字不能出現在一般模組中。
   請教版大或各位先進,個人又非得在一般模組內執行。應如何解決?
           或是修改成Me為.......??????
謝謝
作者: yangjie    時間: 2010-11-5 16:57     標題: RE: myGetProcessIdFileName(Me.hWnd)

本帖最後由 yangjie 於 2010-11-5 17:31 編輯

回復 1# yangjie
各位大大:
對不起
   原先前 "myGetProcessIdFileName"語法是錯的(可能沒有函數"myGetProcessIdFileName")
我只是想用VB 寫出一段  然後轉成執行檔  例如轉成  "輸入資料.exe "
執行時 會msgbox彈出檔名 "輸入資料"
若將"輸入資料.exe " rename  成 "登錄.exe "
執行時 會msgbox彈出檔名 "登錄"
懇請諸位大大協助
具這樣功能之VB語法?? 如何傳回自身檔名?????
作者: Min    時間: 2010-11-5 21:40

App.EXEName

還有 要傳外部參數進去 不是這樣做的
因該是要用Command

Command是程式內接收的函數
將您包好的程式 建立捷徑
捷徑路徑就會的值 就是傳入值了
如以下範例 傳入值就是"我愛麻辣家族"
"C:\Project1.exe" 我愛麻辣家族
作者: yangjie    時間: 2010-11-5 22:50

回復 3# Min

感激您的回應
       個人尚在理解中
    我的主程式如下: 我想在  04    Set f = fso.GetFile("登錄.xls")  中傳回本程式轉成之***.exe檔的BaseName
         這樣子就可以用參數代表第9行的檔名
請教應如何修改第4行? 謝謝
01    Sub Main()
02    Dim fso, f As Object
03    Set fso = CreateObject("Scripting.FileSystemObject")
04    Set f = fso.GetFile("登錄.xls")
05    Dim n
06    n = fso.GetParentFolderName(f.Path)
07    Set objXLApp = CreateObject("Excel.Application")
08    objXLApp.Visible = True
09    Set objXLBook = objXLApp.Workbooks.Open(n & "\登錄.xls")
10    Set objXLBook = Nothing
'    objXLApp.Quit
11    Set objXLApp = Nothing
12    Set fso = Nothing
13    Set n = Nothing
14    Set f = Nothing
15    End Sub
作者: yangjie    時間: 2010-11-5 23:40

OK 了 測試成功
感激 Min
真的是加上 f1 = App.EXEName    f1 就是BaseName
    Dim f1
    f1 = App.EXEName
    Dim fso, f As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f = fso.GetFile(f1 & ".xls")
真是太棒了




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)