ご訪問ありがとうございます。
Googleシートマスターのひろしです。
前回
【VBA】Excel カラム(列番号)をアルファベットから番号(数字)に変換する方法(1行でOK)
カラムをアルファベットから数字に変換する方法をお伝えします。
今回は、とっても価値の高い方法をお伝えします。
これを知ることであなたは、
セルに指定したExcelファイルを読み込むことができます。
こうすることで、結合されたセルも展開することが
できるので何かと便利です。
VBAスクリプト
指定されたパスからExcelファイルを読み込む
'------------------------------------------
'指定されたパスとシートNoからワークシートを読み込む
'FilePath ファイルのフルパス
'SheetNo シートNo
'戻り値 ファイルの中身
'------------------------------------------
Public Function GetExcelData(ByVal FilePath As String, ByVal SheetNo As Integer) As Variant
Dim wb As Workbook
Dim ws As Worksheet
'ワークブックを開く
Set wb = Workbooks.Open(FilePath)
'シートを取得
Set ws = wb.Worksheets(SheetNo)
'データ入力されている範囲を取得する
GetExcelData = ws.UsedRange
'ワークブックを閉じる
wb.Close
'メモリー開放
Set ws = Nothing
Set wb = Nothing
End Function
テスト用呼び出しスクリプト
Function test()
Dim FilePath As String
Dim InSheetNo As String
Dim AllData As Variant
With ThisWorkbook.Sheets(1)
FilePath = .Range("B1")
InSheetNo = .Range("B2")
End With
AllData = GetExcelData(FilePath, InSheetNo)
Dim MaxRow As Integer, MaxCol As Integer
' '最大行数を取得する
MaxRow = UBound(AllData, 1)
'最大列数を取得する
MaxCol = UBound(AllData, 2)
Debug.Print "行数=", MaxRow, " 列数=", MaxCol,
End Function
テスト方法
Step1.
以下の内容のサンプルシートを作成します。
B1セルにフルパス
B2セルにシート番号
Step2.
①B1セルに読み込むエクセルファイルをフルパスで入力します。
*Shift+右クリックでパスをコピー後、B1セルにそのままコピペすると楽です。
Step3.
上記スクリプトを貼り付けてtestを実行します。
以下のように表示されます。
最後までご覧いただきありがとうございます。
つぎはこちら
【VBA】Excel 接合したセルの番地を知る方法(結合セル対応)
【VBA】Excelで結合されたセルを華麗に処理することができます。