• ベストアンサー

エクセルの文字と引き算

あるセルに、文字の入ったセルを読み込んだ後、300の数字が入ったせるから数字を引いて来るような関数は可能でしょうか? 具体的には「セル1」に「セル2(文字)」の文字を読み込んだ後、300から隣にある「セル3(正の数字」を引いて「セル2(文字)」を表示することです!宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

>B1:B3に東京、大阪、福岡の順で文字、C1:C3には2、6、14の順で数字が入ってい ます。 >D1:D3には300、100、200の順で数字が入っています。 >A1には「東京」を指定したら 説明不足です。A1セルに「東京」を入力するってことでよろしいですか? 指定ということはどこかから選択するのですか? 説明が苦手なら最低3つ以上はサンプルを示してください >D1の数字からC1の2を引いてE1に 298の数字の表示、 >A1には「東京」を表示したいのですが可能でしょうか? 「可能です。」という回答が欲しいわけではないと思います。 解釈その1 そのまま、数式であらわすとE1セルに =IF(A1="東京",D1-C1,"") A1セルに東京と入力されたら D1-C1 解釈その1.5 =IF(A1="東京",D1-C1,"") 下へオートフィル =IF(A2="東京",D2-C2,"") 解釈その2 =IF(A1=B1,D1-C1,"") 下へオートフィル A1セルと隣のB1セルとが同じなら引き算 解釈その3 =IF(A1="","",VLOOKUP(A1,$B$1:$D$3,3,FALSE)-VLOOKUP(A1,$B$1:$D$3,2,FALSE)) 下へオートフィル 何か書いてあれば、表引きを行い一致した行のD列から(一致した行の)C列の値を引く

todaykeep
質問者

お礼

解釈その3 =IF(A1="","",VLOOKUP(A1,$B$1:$D$3,3,FALSE)-VLOOKUP(A1,$B$1:$D$3,2,FALSE)) 下へオートフィル 何か書いてあれば、表引きを行い一致した行のD列から(一致した行の)C列の値を引く 解釈その3のとおりです。文字と表引きが一つの関数で出来ないか、困っていました。 確かに勉強不足ではありますが、IFとVLOOKUPの組合せがうまく出来なかったので、大変助かりました。 本当にありがとうございました!

その他の回答 (2)

回答No.2

文字列の足し算なら、文字と文字をつなげることと考え =A1&B1 でA1セルとB1セルをつなげて表示できる。 そこで文字列の引き算と考えると置換と考えてみる =SUBSTITUTE(A1,B1,"",1) 文字列の途中も置換されてしまうのでもう一工夫必要かもしれない ここまでは、タイトルからの推測。 ********************** >「セル1」に A列と仮定した >「セル2(文字)」の文字を読み込んだ後、 B列と仮定した >300から C列と仮定した >隣にある「セル3(正の数字」 D列と仮定した >を引いて「セル2(文字)」を表示することです! B列に上書きすると考えた。 >「セル1」に「セル2(文字)」の文字を読み込んだ後、 C列に書かれたC2:C6セル範囲をコピーして、B2:B6セルに貼り付け >300から隣にある「セル3(正の数字」を引いて「セル2(文字)」を表示することです! C2セルに =IF(D2=300,300-E2&"","") (数字で表示されるので表示形式が標準の場合、左による) これがどのような意味を持つのか不明。 数値:計算できる値 数字:計算できない文字列、(漢数字は漢字で書かれた数字)。Excelは工夫すると数値化することができる。 解釈に努めたがこれが限界。推測させる質問は、説明不足である。

todaykeep
質問者

お礼

お礼と回答が遅くなり、すみませんでした。回答の関数はかなり参考になりましたので、再度説明させて頂きます。 B1:B3に東京、大阪、福岡の順で文字、C1:C3には2、6、14の順で数字が入ってい ます。 D1:D3には300、100、200の順で数字が入っています。 A1には「東京」を指定したらD1の数字からC1の2を引いてE1に 298の数字の表示、A1には「東京」を表示したいのですが可能でしょうか?

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

エクセルの用語を使って、はっきり質問に質問文を書くこと。 シートの上で見えるとおりの形式で実例を挙げれば判りやすいのだ。セル、セルというがエクセルではセルが主体で書かなくても判る。むしろセルの番地(列と行)・データの有様が判るように質問を書くこと。 >300の数字ーー>書くとすれば300行の文字と数字の組? セル1-->セルA1など >読み込んだ後ーーこれもCSVファイルを読み込むようなケース以外はこう書く必要なし。入力して、作成してとか言う場合はある。普通には、エクセルのシートに読み込んだ後の話をするので、こんなの書く必要は無い。 ーー 多分ここういうことか? A列のA1に何か数字(コード)を入れる B列C1:D5に 1 東京 2 横浜 3 靜岡 4 名古屋 5 大阪 (本当は300行あり) (こういう簡単な少数行数の、例を質問に挙げると、読者にはわかりやすい) 5-->300行への変更は、普通は、何処をどう買えれば良いか、類推できるもんだ。 A1に2と入れればB1に横浜と出したいのか。 VLOOKUP関数を使う(常識的な関数だ.、これを知らないのはエクセルの勉強・経験が極くわずかというバロメーターと思う) =VLOOKUP(A1,$C$1:$D$5,2,FALSE) Googleで「エクセル VLOOKUP関数」で照会してよく読んでください。 >引き算 とは何?こういう表から値を引いてくることなら、検索とか表引きとかいう。演算の引き算と何の関係もない。

todaykeep
質問者

お礼

回答していただきました方の言うとおり、エクセルについて知識が全くありません。と同時に説明不足では回答に困るのは無理もありません!今後、分かりやすく質問させて頂きます。有難う御座いました。

todaykeep
質問者

補足

お礼と回答が遅くなり、すみません。うまく説明出来ないかもしれませんが、再度説明させて頂きます。 B1:B3に東京、大阪、福岡の順で文字、C1:C3には2、6、14の順で数字が入っています。 D1:D3には300、100、200の順で数字が入っています。 A1には「東京」を指定したらD1の数字からC1の2を引いてE1に 298の数字の表示、A1には「東京」を表示したいのですが可能でしょうか?

関連するQ&A

  • Excel 隣のセルの頭文字に応じて文字を自動入力

    Excelの質問です。 隣のセルに入力された文字列の頭の文字に応じて、セルに自動的に文字を入力するにはどうすればよいのでしょうか?関数初心者です。 具体的には、 A1のセルに「T○○○○○」(○は任意の数字)が入力されていれば、頭文字がTなので、B1のセルに東京と自動的に表示する。 A2のセルに「N○○○○○」(○は任意の数字)が入力されていれば、頭文字がNなので、B2のセルに長野と自動的に表示する。 です。 よろしくお願いします。

  • エクセルのVBAで教えたください。セルの文字数が特定の文字数の時のみ下2桁を書き出す方法。

    VBA初心者です。仕事での作業で困っています。 大量の数値データが1列にあります。それぞれの数値の文字数を関数で隣のセルに表示しています。その文字数が例えば4文字の時だけ下2桁の数字をさらに隣のセルに書き出したいのですが、どのような式を作ればよいのでしょうか。 こんなイメージです。 セル1  セル2  セル3 1025   4    25 124556  6 12     2 1254   4    54 6587   4    87 よろしくお願いいたします。m(_ _)m

  • エクセル・IF関数について

    困ってます。 「AV7」というセルに「=IF(AO7="除外",0,AS7)」という関数が入っています。 =つまり「AO7」のセルに"除外"という文字が入っていた場合に「0」と表示され それ以外の文字の場合は「AS7」の文字がイコールで「AV7」に表示される、という関数です。 で、、その「AV7」の隣のセルに 「=IF(AV7>=1000000,1000000,AV7)」という関数を入れています。 =AV7の数字が1000000以上だった場合は1000000となるということです。 で、、、AV7のセルに特に何も入力がなければAV7隣のセルも何も表示をしないように したいのですが、AV7に入力がないときも、なぜか「1000000」と表示されてしまいます。 何が問題なのでしょうか?解決法を教えてください。

  • エクセル で 数値によって文字色の指定はどうすればいいですか

    ある計算をして、0以上の数字が「A1」のセルに出てくるとき、 文字色を0~9ならば白文字表示、10以上の場合は黒文字表示にしたいというような関数はあるのでしょうか。

  • エクセル2010にて、セルに文字や日付を

    エクセル2010で、セルに文字や日付を入力したらと隣のセルに”○”と表示したいのですが できますでしょうか? 文字は達成済やまた違う文字の時もあり、日付もまちまちなので、IF関数や、条件付き書式などではできないのでしょうか。非常に困っております。どうかよろしくお願いいたします。

  • エクセルへの入力について

    「あるセルに、隣のセルを参照して、決まった文字を自動的に入力することは出来ますでしょうか。」  なるべく入力の手間を省きたいと考えています。隣のセルに文字(今回は数字です) が入った瞬間に決まった文字を入力するので、それを自動的にしたいです。 具体的には 隣のセルに何かしらの数字が入力されたのを参照して、「~」という文字を自動的に入力させることは 出来ますでしょうか。 よろしくお願いいたします。 質問の仕方が漠然としているかもしれませんが、よろしくお願いいたします。

  • エクセルについて

    セルA1に数字が入ったら、茶色の数字にするのは、どうやってやりますか?また、セルA1の数字が茶色に表示されたら、隣のセルB1に、繰越という文字を表示するのは、どうやってできますか?

  • エクセルのセルに入れた文字あるいは数字を別なセルに1文字づつ移したい

    エクセルのセルに入れた文字あるいは数字を別なセルに1文字づつ移したいが、どのような関数を使えばよいのでしょうか?

  • Excelで、ハイフンを消したいけど000は残したい

    A列に、 00033-11-55 00432-12-01 00022-11-56 ・・・・・・ と、5桁-2桁-2桁 の数字がずーっと並んでいます。 これを、B列の、各となりのセルに、 000331155 004321201 000221156 ・・・・・・ というふうに、 ハイフンは消すが、000や00は残した数字を表示させたいです。 単に置換で、「-」を「」に置き換えると、00や000が消えてしまいます。。。。。 A列の、セルの書式設定を文字列にしても駄目でした。 どうすればいいでしょうか? 何かうまい関数などは、ありませんでしょうか?

  • Excel セル内の文字だけを取り出すには

    Excelの1つのセルに 01234 ABCDEFG のように、「数字5つ(固定)+半角スペース+(任意の数の)文字」 が入力されています。数値は必ず5桁と決まっていますが、 文字列の数はさまざまです。 関数で文字の部分だけ、別のセルに取り出したいのですが、 どの関数を使うとできますか?教えて下さい。 よろしくお願いします。

専門家に質問してみよう