名前Rubberduck 2.0.11.2453のコード検査を実行した後、としてタグが付加されます4つの範囲の参照があります。コード検査範囲リファレンス
は、メンバー「レンジ」暗黙のうちにActiveSheet
参照問題の範囲は名前付き範囲を参照しています。名前付き範囲参照を修飾する必要がありますか?
Private Sub RunORatio(ByVal TabNum As Integer)
Dim Start As Integer, Cat As Integer, iMth As Integer, CurrentRow As Integer, Report As Integer
Dim wsORatio As Worksheet, wsData As Worksheet, wsMacro As Worksheet
Dim sMap As String, Test As String
With ActiveWorkbook
Set wsMacro = .Worksheets("Macro")
Set wsORatio = .Worksheets("ORatio" & TabNum)
With wsORatio
sMap = "oratio" & TabNum & "map"
For CurrentRow = 1 To Range(sMap).Rows.Count '<---1 here
Test = Range(sMap).Cells(CurrentRow, 1) '<---1 Here
Set wsData = ActiveWorkbook.Worksheets(Test)
Start = Range(Range(sMap).Cells(CurrentRow, 2)).Row '<---2 Here
Report = wsMacro.Range(sMap).Cells(CurrentRow, 3)
For Cat = 0 To 12
For iMth = 1 To 12
wsORatio.Cells(Report + Cat, 7 + iMth) = wsData.Cells(Start + Cat, 37 + iMth)
Next iMth
Next Cat
Next CurrentRow
End With
End With
End Sub
'sMap'は' Name'として定義されていますので、コード全体を共有していない(おそらく長すぎます)ので、あなたはそれを 'Range'に設定しましたか? –
私は、除外された唯一のものは宣言です... – Rdster
あなたの名前付き範囲 'oratio1map'の範囲は何ですか...?それはワークブックですか?範囲が定義されているシートを指定して、そのタグを避けるべきです。つまり、 'Sheets(" SheetName ")。Range(...)'! – R3uK