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

看板Office作者 (艾爾洪斯)時間7年前 (2018/05/19 16:37), 7年前編輯推噓0(0011)
留言11則, 2人參與, 7年前最新討論串1/1
軟體: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分頁中的名稱? 並且在做下一筆時可以自動抓下一筆? 目前想應該是上面標紅色部分要做修改 但不知道怎麼改... 請各位前輩指點 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.46.211.121 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1526719043.A.DA3.html ※ 編輯: airhong (114.46.211.121), 05/19/2018 16:38:23

05/19 17:04, 7年前 , 1F
檔案的工作表內連結筆數固定嗎?
05/19 17:04, 1F

05/19 17:05, 7年前 , 2F
如果是的迴圈於工作表source,a欄有資料內,以完整路徑[檔
05/19 17:05, 2F

05/19 17:06, 7年前 , 3F
名(a欄資料)]工作表名'!儲存格的方式
05/19 17:06, 3F

05/19 17:08, 7年前 , 4F
連結上以&,寫法如"='d:\[" & range("a" & 變數名) & "]工
05/19 17:08, 4F

05/19 17:09, 7年前 , 5F
作表名'!a1"
05/19 17:09, 5F

05/19 17:10, 7年前 , 6F
再以該儲存格range.autofill,destination方面可
05/19 17:10, 6F

05/19 17:10, 7年前 , 7F
range.offset和resize來調整
05/19 17:10, 7F

05/19 17:13, 7年前 , 8F
筆數不固定的話,可以某一儲存格以"=counta('d:\[" &
05/19 17:13, 8F

05/19 17:14, 7年前 , 9F
range("a" & 變數名) & "]工作表名'!a:a)" 來取得筆數
05/19 17:14, 9F

05/19 17:15, 7年前 , 10F
再以該筆數用於range.autofill destination後的範圍大小
05/19 17:15, 10F
※ 編輯: airhong (114.46.211.121), 05/19/2018 17:49:45 ※ 編輯: airhong (114.46.211.121), 05/19/2018 17:51:49 ※ 編輯: airhong (114.46.211.121), 05/19/2018 17:52:39

05/19 21:55, 7年前 , 11F
研究好久 終於可以 感謝soyo大大
05/19 21:55, 11F
文章代碼(AID): #1Q_-93sZ (Office)
文章代碼(AID): #1Q_-93sZ (Office)