返回列表 上一主題 發帖

[發問] 用excel打開筆記本

回復 5# an13755
修改一下
  1. Option Explicit
  2. Sub ZZ()
  3.     Dim Rng As Range, i As Integer
  4.     Application.ScreenUpdating = False
  5.     For i = 1 To 50
  6.         ' i 是數字        ->Sheets(i)   活頁簿視窗上第幾個工作表
  7.         'i & "" 變成字串  ->Sheets(& "") 工作表i
  8.         Set Rng = Sheets(i & "").Range("A1:A20")  'Rng設定為 工作表i的範圍
  9.         With Workbooks.Add(1)                     '新增活頁簿(工作表1張)
  10.             Rng.Copy .Sheets(1).Cells(1)          '複製到新增活頁簿第1 張工作表的[A1]
  11.             .SaveAs Filename:="D:\" & i & ".txt", FileFormat:=xlText, CreateBackup:=False
  12.             .Close True
  13.     End With
  14.     Next i
  15.     Application.ScreenUpdating = True
  16. End Sub
複製代碼

TOP

回復 7# an13755
請自行消除 ,
1= 4 6 7 13 14 32 37,
1= 9 15 20 27 28 33 36 38,
1= 1 2 17 18 19 21 22 26 30,
1= 3 23 24 29 34,
1= 5 8 10 11 12 16 25 31 35 39,
6= 7 9 10 16 17 35 40,

TOP

回復 9# an13755
  1. Option Explicit
  2. Sub Ex()
  3.     Dim Rng As Range, i As Integer, Fs As Object, A As Object, E As Range
  4.     Application.ScreenUpdating = False
  5.     Set Fs = CreateObject("Scripting.FileSystemObject") 'FileSystemObject 物件 提供對電腦檔案系統的存取。
  6.     For i = 1 To 50
  7.         Set Rng = Sheets(i & "").Range("A1:A20")  'Rng設定為 工作表i的範圍
  8.         Set A = Fs.CreateTextFile("D:\" & i & ".txt", True)    '建立文字檔案
  9.         'CreateTextFile 方法 建立一個指定的檔名並且傳回一個用於該檔案讀寫的 TextStream 物件。
  10.         '如果可被覆蓋其值為 True,其為 False 時無法覆蓋
  11.         For Each E In Rng
  12.             A.WriteLine (E)
  13.         Next
  14.         A.Close
  15.     Next i
  16.     Application.ScreenUpdating = True
  17. End Sub
複製代碼

TOP

本帖最後由 GBKEE 於 2012-1-17 10:10 編輯

回復 13# 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)                           '儲存格寫入文字檔
  14.     Next
  15.     A.Close
  16.     Application.ScreenUpdating = True
  17. End Sub
複製代碼

TOP

回復 15# PJChen
With Workbooks("test")        '請改成要複製活頁簿的名稱   
這檔案已經開啟           With Workbooks("2011 Shipping for NE.xlsx")
這檔案尚未經開啟       With Workbooks.Open("P:\BCM\2011 Shipping for NE.xlsx")

TOP

本帖最後由 GBKEE 於 2012-1-17 10:12 編輯

回復 17# PJChen
14# 有錯 已更正為
Set Rng(1) = .SheetS("Booking").[B3:B35]

TOP

回復 19# PJChen
傳上檔案看看

TOP

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

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

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

TOP

        靜思自在 : 口說一句好話,如口出蓮花;口說一句壞話如口吐毒蛇。
返回列表 上一主題