Board logo

標題: [發問] 網路芳鄰中 原主機路徑應如何下語法? [打印本頁]

作者: yangjie    時間: 2014-2-14 11:28     標題: 網路芳鄰中 原主機路徑應如何下語法?

向大大先進們求救:
      原本在自己主機由A1.xls 表單開啟A2.xls  沒問題
     Private Sub UserForm_Initialize()
              Dim Path1, str1, str2 As String
              Path1 = Application.ActiveWorkbook.Path
              Set wb = ActiveWorkbook
              wb.Activate
              ChDrive Split(Path1, ":")(0)
              ChDir Path1
              Dim FileName As Variant
              Dim xlfileName As String
              FileName = Path1 & "\" & "A2.xls"
              xlfileName = Dir(FileName)
              If IsOpen(xlfileName) Then
                    Workbooks(xlfileName).Activate
                    Set wb1 = Workbooks(xlfileName)
             Else
                    Set wb1 = Workbooks.Open(FileName, True, False)
             End If
             wb.Activate
     End Sub
    因情勢需要需將此A1.xls  置入網路芳鄰中  由第二桌電開A1.xls  
    結果 抓不到 A2.xls  
   我知道是path1之問題
   應如何設定   FileName = " 主機一" 的 Path1 & "\" & "A2.xls"  ????
  當然以下所開的 Word檔亦在網路芳鄰中 路徑應如何下語法
    Set appWD = CreateObject("Word.Application")
    With appWD
        .Visible = True
        .ChangeFileOpenDirectory Path1 & "\"
        .Documents.Open FileName:="A4合併列印(3X5).doc"
        .WindowState = wdWindowStateNormal
        .Run "A4合併列印(3X5)!upPrint1" '執行這巨集
'        .Quit SaveChanges:=False      '關閉Word
    End With
謝謝協助  有點心急  萬分感激
    Set appWD = Nothing
End Sub
作者: stillfish00    時間: 2014-2-14 12:48

回復 1# yangjie
"\\主機電腦名稱\共用資料夾" & "\" & "A2.xls"
作者: yangjie    時間: 2014-2-14 16:36

回復 2# stillfish00

請問大大
可否用VBA 如何先自行獲得電腦名稱???
且本身亦有時也要開A1 去打開A2
作者: stillfish00    時間: 2014-2-17 09:32

回復 3# yangjie
同一共用資料夾中的 A2.xls 路徑
ThisWorkbook.Path & Application.PathSeparator & "A2.xls"

有問題的不是path1吧
這行才有問題 : ChDrive Split(Path1, ":")(0)
作者: yangjie    時間: 2014-2-20 00:43

請教stillfish00:
當  A1.xls  ,  A2.xls   都放在主機1的網路芳鄰中共享
由區域網路主機2  去打開  A1.xls  
Sub UserForm_Initialize()
              Path1 = Application.ActiveWorkbook.Path
              Set wb = ActiveWorkbook
              wb.Activate
              FileName = Path1 & "\" & "A2.xls"
              xlfileName = Dir(FileName)
              If IsOpen(xlfileName) Then
                    Workbooks(xlfileName).Activate
                    Set wb1 = Workbooks(xlfileName)
             Else
                    Set wb1 = Workbooks.Open(FileName, True, False)
             End If
問題一:此  path1抓得到主機1 中的  A2.xls (由主機2) 嗎
              此  path1有含網路芳鄰中的Drive嗎?
問題二:   FileName =ThisWorkbook.Path & Application.PathSeparator & "A2.xls"
             有含網路芳鄰中的Drive嗎?
作者: stillfish00    時間: 2014-2-20 17:03

本帖最後由 stillfish00 於 2014-2-20 17:06 編輯

回復 5# yangjie
網路芳鄰中的Drive

這是甚麼??  你是指網路磁碟機嗎??
如果有設定網路磁碟機,  .path 是會包含磁碟機代號
作者: yangjie    時間: 2014-2-27 21:26

本帖最後由 yangjie 於 2014-2-27 21:27 編輯

回復 6# stillfish00


    謝謝 已解決
拿掉 ChDrive Split(Path1, ":")(0) 即可




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