[[20171003022829]] 『代入した変数”Data”の中に入ったはずの文字を 氏x(snb1001) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『代入した変数”Data”の中に入ったはずの文字を 参照させるには?』(snb1001)

いつもお世話になっていおります。

さて、今回は離れたところにあるセル範囲(B2からI2まで)を参照して
それぞれ別の式をP列の3行目から18行目まで入れたいと思います。

ところが、どうしても代入した変数”Data”の中に入ったはずの文字を
参照してくれません。

ここでつまずいてしまったので、iでループしたかったのですが
とうていそこまで行けず、あえなく挫折・・。

マクロは次の通りです。

Sub 式埋込()

   Dim i As Long
   Dim Data2 As Range

  For i = 1 To 8

   Data2 = Cells(2, 2)  '"B2"セル内には「買」か「売」という文字が入っている

  'Data3 = Cells(2, 3)  "C2"セル内には「買」か「売」という文字が入っている
  'Data4 = Cells(2, 4)
  'Data5 = Cells(2, 5)
  'Data6 = Cells(2, 6)
  'Data7 = Cells(2, 7)
  'Data8 = Cells(2, 8)
  'Data9 = Cells(2, 9)

   Cells(2 * i + 1, 16).FormulaR1C1 = "=IF(COUNTIF(Data2,""*買*"")>0,(RC[-1]-RC[-2])*R4c13,"""")"

   Cells(2 * i + 2, 16).FormulaR1C1 = "=IF(COUNTIF(Data2,""*売*"")>0,(RC[-2]-RC[-1])*R4c13,"""")"
  'Cells(2 * i + 1, 18).FormulaR1C1 = "=IF(COUNTIF(Datai,""*買*"")>0,(RC[-1]-RC[-2])*R4c13,"""")"
  'Cells(2 * i + 2, 18).FormulaR1C1 = "=IF(COUNTIF(Datai,""*売*"")>0,(RC[-2]-RC[-1])*R4c13,"""")"

  Next i

  If i = 8 Then i = 1

End Sub

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 iのカウンタが増える毎に参照先を右にずらすだけなら、変数使うまでも無いと思うけど、
 変数の勉強がしたいんですか?

 時間無いからDataの変数使わない方法だけ、
 変数使う方法は他の人の回答で勉強して下さい。

 >Cells(2 * i + 1, 16).FormulaR1C1 = "=IF(COUNTIF(Data2,""*買*"")>0,(RC[-1]-RC[-2])*R4c13,"""")"
 >Cells(2 * i + 2, 16).FormulaR1C1 = "=IF(COUNTIF(Data2,""*売*"")>0,(RC[-2]-RC[-1])*R4c13,"""")"
 この2行は必ずB2セルを参照みたいだから、
 Cells(2 * i + 1, 16).FormulaR1C1 = "=IF(COUNTIF(R2C2,""*買*"")>0,(RC[-1]-RC[-2])*R4c13,"""")"
 Cells(2 * i + 2, 16).FormulaR1C1 = "=IF(COUNTIF(R2C2,""*売*"")>0,(RC[-2]-RC[-1])*R4c13,"""")"
 で良いですよね。

 こっちの変数にしたいんだろうなと言う方は、
 >Cells(2 * i + 1, 18).FormulaR1C1 = "=IF(COUNTIF(Datai,""*買*"")>0,(RC[-1]-RC[-2])*R4c13,"""")"
 >Cells(2 * i + 2, 18).FormulaR1C1 = "=IF(COUNTIF(Datai,""*売*"")>0,(RC[-2]-RC[-1])*R4c13,"""")"

 Cells(2 * i + 1, 18).FormulaR1C1 = "=IF(COUNTIF(R2C" & i + 1 & ",""*買*"")>0,(RC[-1]-RC[-2])*R4c13,"""")"
 Cells(2 * i + 2, 18).FormulaR1C1 = "=IF(COUNTIF(R2C" & i + 1 & ",""*売*"")>0,(RC[-2]-RC[-1])*R4c13,"""")"

(sy) 2017/10/03(火) 07:19


ありがとうございます。

OUNTIF(R2C" & i + 1 & ",""*買*"")>0,

R1C1形式の時の絶対参照の表示方法がやっとわかりました。

お忙しいところ、ありがとうございました。
(snb1001) 2017/10/03(火) 07:52


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.