前提・実現したいこと
毎回初歩的な質問で恐縮です。
エラー解消についてアドバイス頂けますと助かります。
発生している問題・エラーメッセージ
実行時エラー5 プロシージャの呼び出し、または引数が不正です。
該当のソースコード
Sub test31_0125_0130() '①InputBoxで年月入力 Dim ws07 As Worksheet, ws08 As Worksheet Dim nengetsu As String Set ws07 = worksheets("月次") Set ws08 = worksheets("月次コスト") nengetsu = Application.InputBox("年月を入力してください", Type:=2) '②指定月で「月次コスト」のセルを指定 Dim i As Long, j As Long '元データの最終行を取得 i = ws08.Cells(Rows.Count, 1).End(xlUp).Row '元データの最終列を取得 j = ws08.Cells(1, Columns.Count).End(xlToLeft).Column '③「月次コスト」を項目毎に合計値を集計 Dim pc As PivotCache Dim pt As PivotTable 'ピボットテーブルに使うデータを設定 Set pc = ActiveWorkbook.PivotCaches.Create( _ SourceType:=xlDatabase, _ SourceData:=ws08.Range(ws08.Cells(1, 1), ws08.Cells(i, j))) Dim shNo As String shNo = Format(Now, "yyyymmdd-hhmmss") Debug.Print shNo ' ピボットテーブルを作成する Set pt = pc.CreatePivotTable( _ TableDestination:=worksheets(shNo).Range("B2"), _ TableName:="ピボットテーブル1") ' ピボットテーブルの詳細を設定する With pt ' (a)列ラベルに設定するデータ ' (b)行ラベルに設定するデータ .PivotFields("項目").Orientation = xlRowField .PivotFields("項目").AutoGroup ' (c)値に設定するデータ .PivotFields(nengetsu).Orientation = xlDataField 'nengetsuを""で囲むとエラーになる。nengetsuはString、Type:=2 End With '④「月次」へ「月次コスト」の集計値を転記 Dim row2 As Long, column2 As Long Dim ws09 As Worksheet Set ws09 = worksheets(shNo) 'ピボットテーブルで集計したデータを選択 '最終行を取得 row2 = ws09.Cells(Rows.Count, 1).End(xlUp).Row '最終列を取得 column2 = ws09.Cells(1, Columns.Count).End(xlToLeft).Column Dim tbl As Range Set tbl = ws09.Range(ws09.Cells(2, 2), ws09.Cells(i, j)) ws07.Activate Dim key As String, k As Long k = 2 ’ここでエラーがでます。 Do While Cells("A" & k).Value <> "" key = Cells("A" & k).Value Dim ret As String ret = WorksheetFunction.VLookup(key, tbl, 2, False) Cells("B" & k).Value = ret k = k + 1 Loop End Sub
他に試したこと
Do While Cells("A" & k) <> ""
「.Value」をとってみましたが、同じエラーでした。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2021/02/01 09:46
2021/02/01 10:05
2021/02/01 10:25