[算表] VBA插入新行輸入內容

作者: airhong (艾爾洪斯)   2018-05-19 16:37:19
軟體:Excel
版本:2013
各位前輩好
小弟目前整理資料已經用VBA超連結將分頁匯入活頁簿了
現在想再多做一個動作 新增一欄在資料最前面並填上資料名稱
如下圖所示
https://imgur.com/a/Z0f6ADv
Sub 測試()
'
' 測試 巨集
'
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
ActiveCell.Value, TextToDisplay:=ActiveCell.Value
Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
Sheets("物料主檔").Select
Sheets("物料主檔").Copy Before:=Workbooks("物料主檔.xlsm").Sheets(1)
'
End Sub
Sub 機種()
'
' 機種 巨集
'
'
Columns("A:A").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A6").Select
ActiveCell.FormulaR1C1 = "機種"
Range("A7").SelectD
ActiveCell.FormulaR1C1 = "=Source!R[-6]C"
Range("A7").Select
Selection.Cut
Application.CutCopyMode = False
Selection.Copy
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
ActiveCell.Replace What:="Camerlation_Rule_", Replacement:="",
LookAt:=xlPart _
, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Find(What:="Camerlation_Rule_", After:=ActiveCell,
LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, MatchByte:=False, SearchFormat:=False).Activate
Application.CutCopyMode = False
Selection.AutoFill Destination:=Range("A7:A240")
Range("A7:A240").Select
End Sub
請問要怎麼做才能讓他自動抓Source分頁中的名稱?
並且在做下一筆時可以自動抓下一筆?
目前想應該是上面標紅色部分要做修改 但不知道怎麼改...
請各位前輩指點 謝謝
作者: soyoso (我是耀宗)   2018-05-19 17:04:00
檔案的工作表內連結筆數固定嗎?如果是的迴圈於工作表source,a欄有資料內,以完整路徑[檔名(a欄資料)]工作表名'!儲存格的方式連結上以&,寫法如"='d:\[" & range("a" & 變數名) & "]工作表名'!a1"再以該儲存格range.autofill,destination方面可range.offset和resize來調整筆數不固定的話,可以某一儲存格以"=counta('d:\[" &range("a" & 變數名) & "]工作表名'!a:a)" 來取得筆數再以該筆數用於range.autofill destination後的範圍大小
作者: airhong (艾爾洪斯)   2018-05-19 21:55:00
研究好久 終於可以 感謝soyo大大

Links booklink

Contact Us: admin [ a t ] ucptt.com