|
教えてください。
activesheetの
A1=カタログNo.
E20=原価
B20=点数
A4=改訂No.
が入っています。
別のブック(『売上』ブックの『原価一覧表』というシート)の
A列にカタログNo.の一覧があります。
findでカタログNo.の行を見つけ、D列=改訂No.、F列=原価、G列=点数
をそれぞれ代入しようと思いました。
activesheeと同じフォームのブックが100以上あるので、
personalにコードを書きました。
Sub 原価jump()
Dim kata As String
Dim genka As String
Dim tensu As String
Dim kaite As String
Dim ra As String
Dim r1 As Range
kata = ActiveWorkbook.ActiveSheet.Range("A1")
genka = ActiveWorkbook.ActiveSheet.Range("E20")
tensu = ActiveWorkbook.ActiveSheet.Range("B20")
kaite = ActiveWorkbook.ActiveSheet.Range("A4")
With Workbooks("売上.xls").Worksheets("原価一覧表").Columns("A:A")
Set r1 = .Find(what:=kata, LookIn:=xlFormulas, lookat:=xlPart, searchdirection:=xlNext, MatchCase:=False)
r1.Activate
If Not r1 Is Nothing Then
ra = r1.Address '⇒ここがデバックで止まりました
Do
r1.Offset(0, 3).Value = kaite
r1.Offset(0, 5).Value = genka
r1.Offset(0, 6).Value = tensu
Set r1 = .FindNext(r1)
Loop While Not r1 Is Nothing And r1.Address <> ra
Else
MsgBox "カタログNo.がありません"
End If
End With
End Sub
上記の『ra=r1.Address』でエラーが出ました。
どこに問題があるのか、おわかりになる方がいらっしゃいましたら
是非、教えてください。よろしくお願い致します。
|
|