開いているExcelブックのすべてのシートの名前を配列で取得するマクロです。
これ自体は意味がないですが、他のマクロに組み込んで使えると思います。
Excel2013で確認しました。
Function get_sheetnames()
'シートの名前を配列で返す。添え字は1から。
ReDim sheetnames(Sheets.Count)
For i = 1 To Sheets.Count
sheetnames(i) = Sheets(i).Name
Next i
get_sheetnames = sheetnames
End Function
'シートの名前を配列で返す。添え字は1から。
ReDim sheetnames(Sheets.Count)
For i = 1 To Sheets.Count
sheetnames(i) = Sheets(i).Name
Next i
get_sheetnames = sheetnames
End Function
使用例は次のとおりです。
Sub sample()
sheetnames = get_sheetnames()
num = UBound(sheetnames) 'シートの枚数
For i = 1 To UBound(sheetnames)
sn = sheetnames(i) 'シートの名前
Next i
End Sub
sheetnames = get_sheetnames()
num = UBound(sheetnames) 'シートの枚数
For i = 1 To UBound(sheetnames)
sn = sheetnames(i) 'シートの名前
Next i
End Sub
コメント