advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 7932 for VLOOKUP (0.002 sec.)
[[20110518211549]]
#score: 3345
@digest: 9ddd728360740ef43b731cdfd1da6f3b
@id: 54574
@mdate: 2011-05-18T20:59:49Z
@size: 3139
@type: text/plain
#keywords: ][ (11250), 値答 (7380), ト量 (4795), 在出 (2496), ロ超 (2387), 式部 (2343), vlookup (1772), 索値 (1646), 名個 (1582), フセ (1475), 当部 (1364), 数[ (1036), 行下 (718), ル番 (705), 面白 (698), 番地 (663), オフ (604), a12 (590), 答有 (582), が宜 (549), 成り (546), formular1c1 (545), false (537), 動記 (531), 勝手 (530), 皆様 (493), cells (476), い質 (459), 検索 (438), 数式 (433), 込ま (421), に成 (381)
『マクロで張り付けた関数のセル番地が変わってくれない』(KI)
マクロ超初心者なので、ばかばかしい質問になりますが 宜しくお願いします。 下のように、E1:F6 にリストがあります。 そして、A2 を検索値にして VLOOKUP で答えを 求めるために、次のような記述をしました。 Sub test1() Range(Cells(2, 2), Cells(4, 2)) = "=VLOOKUP(A2,$E$1:$F$6,2,FALSE)" End Sub これにより、B2:B4 には、正しくVLOOKUPの数式が書き込まれました。 次に、10行下の A12 の検索値に対応させるために下のような記述をしました。 Sub test2() k = 10 'オフセット量 Range(Cells(2 + k, 2), Cells(4 + k, 2)) = "=VLOOKUP(A2,$E$1:$F$6,2,FALSE)" End Sub ここで質問なのですが、B12 には =VLOOKUP(A2,$E$1:$F$6,2,FALSE) と書き込まれてしまいます。 私の思いは、 =VLOOKUP(A12,$E$1:$F$6,2,FALSE) となって、VLOOKUP の検索値も A2 から A12 へと 勝手に変わってくれるものと考えていました。 K=10 としているので、数式を書き込む行は正しく行われているのに 数式の中の検索値の部分は勝手に変わってくれないのですね。 [A] [B] [C] [D] [E] [F] [1] 検索値 答え 品名 個数 [2] c 3 a 1 [3] a 1 b 2 [4] b 2 c 3 [5] d 4 [6] e 5 [7] [8] [9] [10] [11] [12] e 3 [13] d 1 [14] a 2 このような場合には VLOOKUP の中はどのようにすれば良いのでしょうか? くだらない質問をしているなということは、自分でも感じているのですが 宜しくお願いします。 (KI) ---- B2セルに「=VLOOKUP(A2,$E$1:$F$6,2,FALSE)」の式を入れる動作を マクロの記録にとると、数式部分もコードに成ります。 出来た数式をコピーして、現在出来ているコードの該当部分に貼り付けて使うと ご希望の様に成りそうに思います。 まぁ「A2」の 2 の所にも +k をするのでも良いと思いますが。。。 数式ですが、「""」で囲われているので、文字列です。 なので、思ったようなセル番地になった文字列が出来れば良いです。 "=VLOOKUP(A2,$E$1:$F$6,2,FALSE)" ↓ "=VLOOKUP(A" & 2 & ",$E$1:$F$6,2,FALSE)" ‾‾‾ここを 2+k にすると kが10の時 12 に成ります。 (HANA) ---- 相対アドレスの特徴を使うなら・・・、 Sub rangetest() Dim k As Long k = 10 With Union(Range(Cells(2, 2), Cells(4, 2)), _ Range(Cells(2 + k, 2), Cells(4 + k, 2))) .Formula = "=VLOOKUP(A2,$E$1:$F$6,2,FALSE)" End With End Sub ichinose ---- いろいろな書き方がありますが、こんなのも。 Sub RCtest() Const k = 10 Range("B2:B4").Offset(k, 0).FormulaR1C1 = "=VLOOKUP(RC[-1],R1C5:R6C6,2,FALSE)" End Sub (Mook) ---- 皆様、早速のご回答有難うございます。 どの、やり方も試してみました 。 なるほど! と、感じました。 マクロは自動記録をしたものに ほんの少し手を加える程度のことしか 出来ませんが、この学校で目にとまった 面白そうな方法などを参考に手探りで やっているような状態です。 皆様これからも、宜しくお願いします。 (KI) ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/201105/20110518211549.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97045 documents and 608224 words.

訪問者:カウンタValid HTML 4.01 Transitional