Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6860 / 13644 ツリー ←次へ | 前へ→

【42611】行番号を取得するには。。。 裕香 06/9/16(土) 14:32 質問[未読]
【42617】Re:行番号を取得するには。。。 ichinose 06/9/16(土) 16:08 発言[未読]
【42618】Re:行番号を取得するには。。。 裕香 06/9/16(土) 16:30 お礼[未読]
【42622】Re:行番号を取得するには。。。 Jigsaw 06/9/16(土) 18:19 回答[未読]
【42624】Re:行番号を取得するには。。。 ichinose 06/9/16(土) 18:31 発言[未読]
【42677】Re:行番号を取得するには。。。 裕香 06/9/19(火) 11:29 お礼[未読]
【42704】Re:行番号を取得するには。。。 ichinose 06/9/19(火) 20:15 発言[未読]

【42611】行番号を取得するには。。。
質問  裕香  - 06/9/16(土) 14:32 -

引用なし
パスワード
   EXCEL初心者でございます。宜しくお願いします。

ランニングリストと範囲指定したシートから
「B5」に入力した検索キーワードの2番目の値
を取得する為下記関数で、値は表示させました。

=VLOOKUP(B5,runninglist,2,FALSE) 

もう1つ この行番号の情報も欲しいのですが、
これって関数で出来ますか?それともVBAで出来ますか??

【42617】Re:行番号を取得するには。。。
発言  ichinose  - 06/9/16(土) 16:08 -

引用なし
パスワード
   ▼裕香 さん:
こんにちは。

>EXCEL初心者でございます。宜しくお願いします。
>
>ランニングリストと範囲指定したシートから
>「B5」に入力した検索キーワードの2番目の値
>を取得する為下記関数で、値は表示させました。
>
>=VLOOKUP(B5,runninglist,2,FALSE) 
>
>もう1つ この行番号の情報も欲しいのですが、
これは、runninglistというセル範囲の最左端列をB5の値で検索して
見つかったセルの行番号を取得したいということですか?

だとしたら、Match関数とROW関数の組合せで可能だと思います。

=MATCH(B5,INDEX(runninglist,,1),0)+ROW(runninglist)-1

こんな数式で可能だと思います。


>これって関数で出来ますか?それともVBAで出来ますか??

【42618】Re:行番号を取得するには。。。
お礼  裕香  - 06/9/16(土) 16:30 -

引用なし
パスワード
   ichinose 様
回答ありがとうございましたm(_ _)m

=MATCH(B5,INDEX(runninglist,,1),0)+ROW(runninglist)-1

このままコピーして貼り付けました。
うひょ〜♪出ました行番号!!

でも、これでは私の身にならないので、もし良ければ
これの説明してもらっていいですか?

それから、これの逆バージョンで、行番号を指定して
その行に情報を貼り付け。。。って出来ますか?

図々しくて申し訳ありませんが、宜しくお願いいたします。m(_ _)m

【42622】Re:行番号を取得するには。。。
回答  Jigsaw  - 06/9/16(土) 18:19 -

引用なし
パスワード
   ▼裕香 さん:

こんばんは。

>それから、これの逆バージョンで、行番号を指定して
>その行に情報を貼り付け。。。って出来ますか?

B5のセルに行番号を入力したとして、
任意のセルに数式を入れると、情報が取り出せます。

=INDEX(runninglist,B5-ROW(runninglist)+1,1)

最後の「,1」を「,2」にすれば、2列目の情報が取り出せます。

【42624】Re:行番号を取得するには。。。
発言  ichinose  - 06/9/16(土) 18:31 -

引用なし
パスワード
   ▼裕香 さん:
>=MATCH(B5,INDEX(runninglist,,1),0)+ROW(runninglist)-1
>でも、これでは私の身にならないので、もし良ければ
>これの説明してもらっていいですか?
全部説明してしまうともっと身にならないと思うので、ひとつだけ。

Index(runninglist,,1)

↑これ、仮にrunninglistというセル範囲がC1:F10だった場合、

Index(runninglist,,1)は、 C1:C10というセル範囲を示します。

もし、

Index(runninglist,,3)となると、E1:E10というセル範囲を示します。

これが分かれば、あとは、Match関数とRow関数をHELPで調べてみたり、
実際に例題数式をセルに打ち込んだりしてみてください。
(勿論、INDEX関数もHELPで調べてみてください)

そうすれば、全体の数式の意味が見えてくると思います。
その上で不明な点があれば、質問内容を絞り込んだ質問を投稿してください。


>
>それから、これの逆バージョンで、行番号を指定して
>その行に情報を貼り付け。。。って出来ますか?

指定した行に何らかの情報を貼り付ける??
もっと具体的な仕様を記述されれば他の方法もあるかもしれませんが、
これだけの情報だと
通常は、VBAを使います。 

例えば、セルA1に行番号を示す数値が入っているとします。

C列のセルA1で示す行に100と入力するには、

標準モジュールに

'======================================
Sub 入力()
  With ActiveSheet
   Range("c" & .Range("a1").Value).Value = 100
   End With
End Sub

上記のコードを実行すると、セルA1に15と入力されていれば、
セルC15に「100」と入力されます。

と、こういう意味ですか?

それとなさりたいことの機能を記述するのは良いのですが、

具体的な例の記述もしてください。

解釈が違う場合もありますから・・・。

試してみてください。

【42677】Re:行番号を取得するには。。。
お礼  裕香  - 06/9/19(火) 11:29 -

引用なし
パスワード
   ▼ichinose さん:
>
お礼が遅れて申し訳ありませんでした。m(_ _)m
わからないなりにも出来ているので、助かっています。

>
>それとなさりたいことの機能を記述するのは良いのですが、
>具体的な例の記述もしてください。
>解釈が違う場合もありますから・・・。
>
そうですよね。申し訳ありません。でもどのように説明して良いか
自分でもわからなくて、言葉でいうようにはなかなか伝えれなく
すみません。(-"-)


>例えば、セルA1に行番号を示す数値が入っているとします。
>C列のセルA1で示す行に100と入力するには、
>標準モジュールに
>'======================================
>Sub 入力()
>  With ActiveSheet
>   Range("c" & .Range("a1").Value).Value = 100
>   End With
>End Sub
>
>上記のコードを実行すると、セルA1に15と入力されていれば、
>セルC15に「100」と入力されます。
>
>と、こういう意味ですか?

少し違って、、、前回のMATCH関数とRow関数で求めた行番号には
一行に多くの情報(A10:CN10)が付いています。
また、MATCH関数とRow関数で求めた行番号は(セルCO10)に格納。
この一行の情報は別のシートで検索されて追加されます。
追加したものがまた、このランニングリスト範囲の同じ行番号に
上書きして欲しかったのです。
固有のIDでもつければ良かったかもしれませんが、、、

【42704】Re:行番号を取得するには。。。
発言  ichinose  - 06/9/19(火) 20:15 -

引用なし
パスワード
   こんばんは。

>>
>そうですよね。申し訳ありません。でもどのように説明して良いか
>自分でもわからなくて、言葉でいうようにはなかなか伝えれなく
>すみません。(-"-)
まず、機能概要を記述する(つまり、やりたい処理を簡潔に記述します)

次に入力データと出力データの説明

その際、私は、具体例を記述するようにしています
例が一つで足りなければ(大抵、足りません)、二つでも三つでも記述します。

>少し違って、、、前回のMATCH関数とRow関数で求めた行番号には
>一行に多くの情報(A10:CN10)が付いています。
>また、MATCH関数とRow関数で求めた行番号は(セルCO10)に格納。
>この一行の情報は別のシートで検索されて追加されます。
どこに追加されるのですか??


>追加したものがまた、このランニングリスト範囲の同じ行番号に
>上書きして欲しかったのです。

私にはまだわかりません・・・。
このランニングリスト範囲も具体的に(A1:CO100等)の範囲を設定して
説明してください。

6860 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free