2016年11月9日 星期三

Excel 巨集 - 自動編號

假設有一資料夾,每個檔案都要在第一個欄位塞入自動編號的值


Sub 新增第一欄為唯一序號()
'
' 新增第一欄為唯一序號 巨集
' 在Excel最左邊加上一新的欄位並給予唯一序號
'

'
For i = 2011 To 2016
    Workbooks.Open Filename:= _
        "C:\Users\Downloads\要加上自動編號\" & i & "NewData.xlsx"
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("A1").Select  '選擇 A1
    ActiveCell.FormulaR1C1 = "唯一值" ' 填入欄位名稱
    Range("A2").Select  '選擇 A2
    ActiveCell.FormulaR1C1 = "1"  '填入數字 1
    Range("A3").Select  '選擇 A2
    ActiveCell.FormulaR1C1 = "2"  '填入數字 2
    Range("A2:A3").Select  '選擇 A2和 A3
' 以上的動作都是用錄製的
    n = ActiveCell.CurrentRegion.Rows.Count ' 找到目前指定的cell的最大列數
    Range("A3").Activate
    Selection.AutoFill Destination:=Range("A2:A" & n)
    Range("A2:A" & n).Select
    ActiveWorkbook.Save
    ActiveWorkbook.Close
Next i
End Sub