返回列表 上一主題 發帖

[發問] 用excel打開筆記本

回復 26# GBKEE
您好,想請問:
以下存檔的名稱我想再增加一個[A2],但修改後巨集卻無法執行,請幫我看看語法是不是有誤?
        Set Rng(2) = .Sheets("Booking").[A1]               'Rng(2) 存檔名稱的儲存格
        Set Rng(2) = .Sheets("Booking").[A1] & "_" & [A2]                     '修改後的存檔名稱

TOP

GBKEE,
完全OK.真是謝謝你!

TOP

回復 25# PJChen
Workbooks.Open ("P:\BCM\Interim\" & Rng(2) & ".txt")
修改成
Shell "Cmd /c start P:\BCM\Interim\" & Rng(2) & ".txt"

TOP

GBKEE大大,
我將程式修改後可執行,它會依指定路徑存成TXT檔,但當它自動打開時為另一個與TXT同檔名的EXCEL檔,檔案類型為文字檔!請幫我看看哪裡出了問題,我把檔案上傳了.TKS. 2011 Shipping NE booking.zip (18.29 KB)

TOP

回復 23# PJChen
  1. Sub Ex()
  2.     Dim Rng(1 To 2) As Range, Fs As Object, A As Object, E As Range
  3.     Application.ScreenUpdating = False
  4.     With Workbooks("test")                       '請改成要複製活頁簿的名稱
  5.         Set Rng(1) = .Sheets("booking").[B3:B35]  'Rng(1) 工作表要複製的範圍
  6.         Set Rng(2) = .Sheets("booking").[A1]      'Rng(2) 存檔名稱的儲存格
  7.     End With
  8.     Set Fs = CreateObject("Scripting.FileSystemObject")        'FileSystemObject 物件 提供對電腦檔案系統的存取。
  9.     Set A = Fs.CreateTextFile("D:\" & Rng(2) & ".txt", True)   '建立文字檔案
  10.     'CreateTextFile 方法 建立一個指定的檔名並且傳回一個用於該檔案讀寫的 TextStream 物件。
  11.     '如果可被覆蓋其值為 True,其為 False 時無法覆蓋
  12.     For Each E In Rng(1)                          '依序處裡複製範圍的儲存格
  13.         A.WriteLine (E.Text)                           '儲存格寫入文字檔
  14.     Next
  15.     A.Close
  16.     Workbooks.Open ("D:\" & Rng(2) & ".txt")
  17.     Application.ScreenUpdating = True
  18. End Sub
複製代碼

TOP

GBKEE,
太謝謝你了,它可以運作正常!但有個小問題想請教,現在資料寫入txt後,它會存在指定的路徑,但我要如何使TXT儲存後能自動打開?可以這麼做嗎?

TOP

回復 21# PJChen
輸入範圍中有錯誤值  請修改如下
  1. For Each E In Rng(1)                          '依序處裡複製範圍的儲存格
  2.         A.WriteLine (E.Text)                           '儲存格寫入文字檔
  3.     Next
  4.    
複製代碼

TOP

[attach]booking[/attach]
請參考檔案.謝謝

2011 Shipping NE booking.zip (8.54 KB)

booking

TOP

回復 19# PJChen
傳上檔案看看

TOP

大師您好,
    For Each E In Rng(1)
        A.WriteLine (E)                           '執行到這裡就停了,請幫幫我
    Next
    A.Close
    Application.ScreenUpdating = True
   
End Sub

TOP

        靜思自在 : 道德是提昇自我的明燈,不該是呵斥別人的鞭子。
返回列表 上一主題