アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルファイル内のデータの索引的なものの作成を考えております。
以下をVBAで実現することは可能でしょうか。

1.任意のファイルを選択
2.選択したファイル名を新規エクセルA列に記入
3.選択したファイルA列からデータを取得し新規エクセルB列に転記
4.3を全シート分繰り返す
5.新規エクセルB列から重複を削除し並びかえ(昇順)

A 回答 (1件)

5.新規エクセルB列から重複を削除し並びかえ(昇順)


の部分は含みませんが、とりあえずひな形です。
A列に ファイル名
B列に シート名
C列に B2セル以下の値にしてあります。

Sub ボタン1_Click()
Dim myFile As Variant

myFile = Application.GetOpenFilename("Excel ファイル (*.xls; *.xlsx),*.xls; *.xlsx")

If VarType(myFile) = vbBoolean Then
MsgBox "キャンセルされました"
Else
Workbooks.Open myFile
cnt = 2
With ThisWorkbook.ActiveSheet
For i = 1 To Worksheets.Count
For j = 2 To Range("B2").End(xlDown).Row
.Cells(cnt, 1).Value = ActiveWorkbook.Name
.Cells(cnt, 2).Value = Sheets(i).Name
.Cells(cnt, 3).Value = Sheets(i).Cells(j, 2).Value
cnt = cnt + 1
Next j
Next i
End With
End If
ActiveWorkbook.Close
End Sub
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!