Excel列表表名称+值
我有一个Excel工作簿几张。 在每张纸上,我有2个单元格值与date(开始date和结束date)。
我的目标是创build一个新的工作表(索引表),其中有一个列出工作簿中所有现有工作表的表格,并且对于每张工作表,我将拥有“开始date”和“结束date”的对应单元格值。
像这样的东西:
名称开始date结束date
Sheet01 01/01/2016 01/02/2016
Sheet02 12/02/2016 23/03/2016
Sheet03 22/03/2016 30/04/2016
Sheet04 22/12/2016 01/12/2016
我该怎么做(如果可能避免VBA,我不是开发者:))
谢谢
您可以只放一个参考,如“= Sheet1!B2”,其中B2将是表1中具有所需date的单元格。
使用下面的代码。 我假设你已经分别在单元格b2和c2开始date和结束date。
Sub SheetNames() Columns(1).Insert For i = 1 To Sheets.Count Cells(i, 1) = Sheets(i).Name Cells(i, 2) = Sheets(i)!B2 Cells(i, 3) = Sheets(i)!C2 Next i End Sub
如果date位于每个工作表的单元格A1和B1中,则:
Sub IndexMaker() Dim sh As Worksheet, n As String With ThisWorkbook .Sheets.Add(After:=.Sheets(.Sheets.Count)).Name = "index" Set sh = ActiveSheet End With For i = 1 To Sheets.Count n = Sheets(i).Name v1 = Sheets(i).Range("A1").Value v2 = Sheets(i).Range("B1").Value If n <> "index" Then sh.Cells(i, "A").Value = n sh.Cells(i, "B").Value = v1 sh.Cells(i, "C").Value = v2 End If Next i End Sub