作者meowde (甜水胡同)
看板Office
標題Fw: [請問] excel的巨集
時間Tue Jul 31 12:14:58 2018
想請問擅長excel的大大們
如果要開啟多個檔案,每次開啟都套用某模式開啟
巨集開啟檔案那部分要怎麼改會比較好呢@@?
目前錄製僅能開啟相同的檔案,
如果開啟其他舊檔案變成還要手動再去全部重案
跪求高手大大解答TT
只能手動一個一個把檔名複製貼上嗎?
還是可以用甚麼方法去套用在每個檔案上呢?
謝謝..
以下是巨集內容
Sub TEST3()
'
' TEST3 巨集
'
'
Workbooks.OpenText Filename:="W:\●個人工作區\XXXXXXXXXXXXXXXXXXXXXXX.TXT", _
Origin:=950, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15 _
, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1), Array(21, 1), _
Array(22, 1), Array(23, 1), Array(24, 1), Array(25, 1)), TrailingMinusNumbers:=True
Range("H4:I9").Select
With Selection.Font
.Name = "Arial Unicode MS"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
With Selection.Font
.Name = "Arial Unicode MS"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
End Sub
※ 編輯: meowde (1.169.17.162), 07/31/2018 12:15:38
1F:→ soyoso: 文字檔如在同一目錄內,迴圈,配合dir來取得檔名 07/31 12:18
2F:→ soyoso: 將取得的檔名置於filename:=後面 07/31 12:19
3F:→ meowde: soyoso大大謝謝您回覆,如果檔案非常大量,也需要全數新增 07/31 13:47
4F:→ meowde: 才有辦法一開excel就自己運行嗎? 07/31 13:48
5F:→ soyoso: 不太了解問題,檔案非常大量是指檔案數量多還是檔案內的資 07/31 14:01
6F:→ soyoso: 料量大? 07/31 14:02
7F:→ soyoso: 也需要全數新增,新增什麼?才有辦法一開excel就自己運行 07/31 14:03
8F:→ soyoso: ?這個問題是指開啟excel檔案就執行該巨集嗎? 07/31 14:05
9F:→ meowde: 檔案數量多,不固定檔名,固定路徑,檔案內資料小QQ 07/31 14:05
10F:→ meowde: 不是每次開啟excel就自動執行,是希望開啟檔透手動執行一 07/31 14:09
11F:→ meowde: 鍵(即巨集) 來簡化每次開啟特定檔案需要的步驟@@ 07/31 14:09
12F:→ meowde: 或是巨集可設定固定開啟某資料夾路徑就執行,而開啟其他位 07/31 14:10
13F:→ meowde: 置的檔案不會自動執行... 07/31 14:10
14F:→ soyoso: 那是否是於固定路徑下的,所有文字檔(txt),亦或有什麼篩 07/31 14:13
15F:→ soyoso: 選條件的檔名呢? 07/31 14:13
16F:→ meowde: 是在固定路徑下的所有文字檔 07/31 14:19
17F:→ soyoso: 那以迴圈配合dir("路徑\*.txt"),可取檔名 07/31 14:22
18F:→ soyoso: 暫存於變數用,原文的巨集就可將filename:=後面的字串,置 07/31 14:23
19F:→ soyoso: 換為"路徑" & 變數方式 07/31 14:24
20F:→ soyoso: 如果路徑的選擇上要以對話框的話,可以 07/31 14:25
21F:→ soyoso: application.filedialog()括號內以...folderpicker 07/31 14:26
22F:→ soyoso: 以原文來看,如整合在一個工作表內,且開啟的文字檔所抓取 07/31 14:32
23F:→ soyoso: 的儲存格範圍相同(H4:I9)的話,可以range.copy到指定的活 07/31 14:34
24F:→ meowde: s大,謝謝您,我研究一下怎麼用QQ" 要多做功課了,好多都 07/31 14:35
25F:→ meowde: 不懂 07/31 14:36
26F:→ soyoso: 頁簿.工作表.range內,或以range = range.value方式 07/31 14:36
27F:→ soyoso: 整合上應會要確認某一欄最後一筆有值的儲存格,可用 07/31 14:37
28F:→ soyoso: range.end()、range.find,如要取得列號則是range.row或 07/31 14:38
29F:→ soyoso: 工作表函數counta或count 07/31 14:39
30F:→ soyoso: 關閉活頁簿workbooks(檔名).close如關閉不存檔參數 07/31 14:42
31F:→ soyoso: savechanges為false或0 07/31 14:42
32F:→ meowde: so大,我用了最陽春的方法,跟您報告一下xd.. 07/31 14:54
33F:→ meowde: 就直接錄製,檔案自己拖曳到excel活頁簿.. 07/31 14:55
34F:→ meowde: 跳過開啟檔案方式,幸運這個時間遇到您願意詳細解說>< 07/31 14:57
35F:→ meowde: 謝謝soyoso老師 07/31 14:57