• 締切済み

Excelの編集方法について

標題、質問です。 Excel2013を利用中です。 セル番地指定で、文字列を入力したい事が目的です。 サンプルを添付します。 入力したいセル番地は"$C$6"と予めデータで存在。 入力したい文字列も、「桃太郎」のように。 それぞれ別のセルにデータとして存在するのですが、 ここからの処理についてご教示ください。 なお、当方の環境が、VBA利用NGとなっていますので、 関数構成でお助け下さい。 お手数ですが、どうぞ宜しくお願い致します。

みんなの回答

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.6

>〉F12セルに絶対番地のアドレスを「$C$7」とキー入力するのでしょうか? >MATCH関数を用いた結果で入力したいせるのアドレスを表示してあるものです。 >〉F13セルには「桃太郎」という名前をキー入力するのでしょうか? >別シートからの参照になります。 >ユーザが自分の名前を入力した状態を想定しています。 ますます、意味不明です。 F12セルにはMATCH関数で求めた行番号を元に表示すべきセル位置を割り出していると言うことですか? C7セルの数式で直接「桃太郎」を抽出する方が良いと思います。 回答No.4で提示した数式で検証したのでしょうか? あなたの目的に合っていなければどのように違うかを補足して頂かないと代案が提示できません。 質問の文言から読み取れる要望事項を満たす数式を提示したつもりです。 Excelの数式はセルに設定するもので、その数式の計算結果をセルに表示するものです。 従って、参照先のセルの値が変われば自動再計算機能で別の値に置き換わります。 つまり、F12の数式の結果が$C$7であればC7セルへ「桃太郎」と表示するようにC2セルからC18セルへ数式を設定したものです。 故に、F12の計算結果が$C$5に変化すればC7セルは空欄になりC5セルに「桃太郎」と表示されます。 これではいけないのでしょうか?

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.5

それなら、INDIRECT関数を利用しべき、ケースだろう。「なーんだ」という感じ。 小生が改めて、例を作ると F3に「横浜」と入力されているとする。数値でもよいが。 E2には、内容は番地だが、エクセル的には、文字列で「F3」と入っているとする。 どこでもよいが、例えば、A4に、=INDIRECT(E2)と、式を入れると A4は「横浜」とでる。 E3に$F$3と入っている場合でも、A5に=INDIRECT(E3)と入れると、 E3は「横浜」とでる。 ーー E2セルなどのデータF3を、行部分と列部分に分解して、その行、列のセルを見に行く関数を作らなくても、専用のエクセル関数があるのだ。 中級以上では有名な関数だ。ややプログラム的な思考のものだが。 2段構えの考えなので、間接(INDIRECT)という名称だ。 ー 画像を挙げるだけでは、目的などは伝わりにくいことをよく経験する。 画像は強力な説明手段だが、読者がどう受け取るのか考えてほしい。

m3373m5424
質問者

お礼

ありがとうございます。 こちらも、INDIRECT関数の利用、検討します。 先程はきつい表現となり、申し訳ありませんでした。 ご容赦下さい。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.4

質問の内容が不明確です。 F12セルに絶対番地のアドレスを「$C$7」とキー入力するのでしょうか? F13セルには「桃太郎」という名前をキー入力するのでしょうか? F13セルの値(文字列や数値)をF12に入力されている番地へ転送するにはVBAのようなプログラム言語でコードを書かないと実行できません。 C2セルからC18セルに関数を設定してF12に指定されたセル番地の$C$7へF13セルの値("桃太郎”)を代入(表示)することは可能です。 C2セルへ次の数式を設定して下へC18セルまでコピーしてください。 =IF($F$12=CELL("address",C2),$F$13,"") その結果はC7セルへ「桃太郎」と表示されます。 F12セルの番地を$C$5に修正するとC7セルは空欄になりC5セルに「桃太郎」と表示されます。

m3373m5424
質問者

補足

失礼しました。今回は参照して頂きたい事例として入力値の形で投稿しましたが実際は違います。 〉F12セルに絶対番地のアドレスを「$C$7」とキー入力するのでしょうか? MATCH関数を用いた結果で入力したいせるのアドレスを表示してあるものです。 〉F13セルには「桃太郎」という名前をキー入力するのでしょうか? 別シートからの参照になります。 ユーザが自分の名前を入力した状態を想定しています。 以上、宜しくお願い致します。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

質問者は初心者らしく、質問で、したいことが、質問文では、よく伝わらない。 ーー (1)式を入れるセルはどこ(どのセル)? (2)値をセットしたいセルはどこ? (3)データを参照したいセルはどこ。 エクセルの関数では、(1)と(2)は同じでないといけない。 また(1)と(3)は同じだとエラーになる。 こんなのは常識でしょう。 これに反する思い(何かがしたくて)で質問してないか? VBAでは、コードは(1)はシートを越えた場所(モジュールシート)で作成され、それが実行されるので、(1)は問題ではない。 小生の、喩え話で言うと 関数は、式を入れるセルで、「受ける」イメージ。 投げいれるイメージでは働かない。 VBAのセルへの代入では、どこかのセルのデータを取ってきて、任意のセルに「投げ入れる」イメージ。データを採った、それ自身のセルにも投げ入れられる。

m3373m5424
質問者

補足

〉(1)式を入れるセルはどこ(どのセル)? 〉(2)値をセットしたいセルはどこ? 〉(3)データを参照したいセルはどこ。 添付したBookの構成、表示しているシートはテンポラリ用ですので、 (1)、(2)に関しては、特に固執するところはありません。 残る(3)は、前述のコメント頂いた方が関数で参照されている通り、 セル"F7"に入っている値:"$C$6"をセル番地と捉えてほしいというものでした。 その意味で画像を添付したのですが、記述しないと不明だったでしょうか?

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.2

C2に =IF(ADDRESS(ROW(),3)=$F$12,$F$13,"") として下にコピーすれば(添付図なら18行までとか) C7に桃太郎と表示されますが…。

m3373m5424
質問者

お礼

kkkkkm さん 早速のご教示ありがとうございます。 大変、助かりました!

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.1

> セル番地指定で、文字列を入力したい事が目的です。 関数で「入力」はできません。 数式は「計算結果を表示する」以外できませんから 全てのセルに 数式を仕込んでおかない限り無理です。また当たり前ですがF12: F13をクリアすると 結果も消えます。

関連するQ&A