• ベストアンサー

合計SUM関数のみのこして、他は一括数値変換したい

よろしくお願いします。 B列に縦に合計SUM関数と、SUM(IF( 関数などいろいろ関数を入れて数字が表示されています。 B列の合計SUM関数は残して、SUM(IF関数・それ以外の関数はをすべて「数値」(関数で現在計算結果として表示されている数値)に変換したいのです。 教えてください。

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

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

循環参照になっているし、配列数式を書いているのかな?って感じだし、 根本的にこのような氷河何故出来上がるんだって気がするけど気にせず ツール - オプション - 全般 [レ]R1C1参照形式を使用する 対象範囲を選択し、[Ctrl]+[H]置換  =SUM(R  → ☆SUM(R で[すべて置換] 対象範囲を選択のまま、コピー (右クリック-形式を選択して貼り付け-) ●値の貼り付け 対象範囲を選択したまま、[Ctrl]+[H]置換  ☆SUM(R  → =SUM(R で[すべて置換] ツール - オプション - 全般 [ ]R1C1参照形式を使用する のチェックを外す

ami-go1999
質問者

お礼

R1C1参照形式の使用の仕方を知りました。 今後も役立てたいと思います。 これで、仕事が効率upすると思います。 助かりました。ありがとうございました。(*^_^*)

その他の回答 (3)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 今仮に、F列以降の列(F列~IV列)は未使用であるものとします。  まず、念のために、以下の様な操作を行い、B列の内容のバックアップを作ってください。 B列全体を選択   ↓ 選択範囲を示す黒い太枠の内側にカーソルを合わせて、マウスを右クリック   ↓ 現れた選択肢の中にある[コピー]をクリック   ↓ G1セルを右クリック   ↓ 現れた選択肢の中にある[コピーしたセルの挿入]をクリック  次に、以下の様な操作を行い、B列の値のみを、H列等に反映して下さい。 B列全体を選択   ↓ 選択範囲を示す黒い太枠の内側にカーソルを合わせて、マウスを右クリック   ↓ 現れた選択肢の中にある[コピー]をクリック   ↓ H1セルを右クリック   ↓ 現れた選択肢の中にある[形式を選択して貼付け]をクリック   ↓ 現れた「形式を選択して貼付け」ダイアログボックスの中にある[値]と記されている箇所をクリックして、チェックを入れる   ↓ 「形式を選択して貼付け」ダイアログボックスの[OK]ボタンをクリック  次に、以下の様な操作を行い、B列のセルの内容を、入力されている関数の情報を含んでいる文字列に変換して下さい。 B列全体を選択   ↓ 選択範囲を示す黒い太枠の内側にカーソルを合わせて、マウスを右クリック   ↓ 「メニューの[編集]ボタンをクリック→現れた選択肢の中にある[置換]をクリック」 か或いは 「[Ctrl]キーを押しっ放しにしながら[H]キーを押す」   ↓ 現れた「検索と置換」ダイアログボックスの「検索する文字列」欄の中に、半角文字で = と入力   ↓ 「検索と置換」ダイアログボックスの「置換後の文字列」欄の中に、半角文字で z= と入力   ↓ 「検索と置換」ダイアログボックスの[すべて置換]ボタンをクリック  次に、I1セルに次の様な関数を入力して下さい。 =IF(COUNTIF($B1,"z=SUM(IF(*"),$H1,IF($B1="","",$B1))  次に、I1セルをコピーして、I2以下に貼り付けて下さい。  次に、以下の操作を行って下さい。 I列全体を選択   ↓ 選択範囲を示す黒い太枠の内側にカーソルを合わせて、マウスを右クリック   ↓ 現れた選択肢の中にある[コピー]をクリック   ↓ B1セルを右クリック   ↓ 現れた選択肢の中にある[形式を選択して貼付け]をクリック   ↓ 現れた「形式を選択して貼付け」ダイアログボックスの中にある[値]と記されている箇所をクリックして、チェックを入れる   ↓ 「形式を選択して貼付け」ダイアログボックスの[OK]ボタンをクリック   ↓ B列全体を選択   ↓ 選択範囲を示す黒い太枠の内側にカーソルを合わせて、マウスを右クリック   ↓ 「メニューの[編集]ボタンをクリック→現れた選択肢の中にある[置換]をクリック」 か或いは 「[Ctrl]キーを押しっ放しにしながら[H]キーを押す」   ↓ 現れた「検索と置換」ダイアログボックスの「検索する文字列」欄の中に、半角文字で z= と入力   ↓ 「検索と置換」ダイアログボックスの「置換後の文字列」欄の中に、半角文字で = と入力   ↓ 「検索と置換」ダイアログボックスの[すべて置換]ボタンをクリック  これで、B列の中で、 =SUM(IF( から始まる関数が入力されているセルのみが、「数値」(関数で現在計算結果として表示されている数値)に変換されますから、後は、変換された内容に間違いが無い事を(H列の値を参照する等して)確認してから、余分なG列~I列を列ごと削除して下さい。

ami-go1999
質問者

お礼

わかり易く、丁寧にありがとうございました。

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.2

> B列の合計SUM関数は残して、SUM(IF関数・それ以外の関数はをすべて「数値」(関数で現在計算結果として表示されている数値)に変換したいのです。 チョッと分かりにくいご質問(表現)ですが、 B列の合計のセル(SUM関数)を残して、その他のセル(関数により値が表示されている)を数値に変換したいと言うことであれば、次のように操作してみて下さい。 (ご質問を間違って解釈しておりましたら、以下はスルーして下さい。) 1) 数値に変換したいすべてのセル範囲を選択して、「コピー」します。 2) セル範囲を選択したまま、「形式を選択して貼り付け」から「値」のラジオボタンをオンにして「OK」を押します。 「形式を選択して貼り付け」は、 a) Excel 2007以降をお使いなら、「ホーム」タブの「貼り付け」の▼を押して、表示されるメニューから「形式を選択して貼り付け」をクリックします。 b) Excel 2003以前のバージョンをお使いなら、「編集」メニューの「形式を選択して貼り付け」をクリックします。 なお、回答者からはあなたのPCの画面を見ることが出来ませんので、ご質問の際は、ご使用のバージョンを明記して頂くようお願いします。

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

関数では、セルに入っている数式を取り出したり判別できない。 VBAでやれば、あるいはやれるかも。しかし質問者には想定範囲外だろう。 形式を選択して貼り付けー値のようなことは関数ではできない。(1セルずつならF9キーを押す方法もある) エクセルは基本的に、操作で利用するソフトである。 以上を良く考えて、省力化・自動化するにも限度があるということを知ること。 初心者が思ったことを何でもやれるわけではない。 質問の入っていることのセル(行・列・シートの情報が)詳細例示が不十分と思うが、出来ないと思う。1回か数回しかない作業なら質問者が操作をやれば良い。 またエクセルのバージョンなど書いて質問するものだ。 >SUM(IF関数 SUMIF関数か?

ami-go1999
質問者

補足

申し訳ありません。不十分でしたね。 EXECL 2002です。 A列   B列   C列   D列 4月 5月 6月 =SUM(IF(([年齢]>=30)*([住所地]="大阪"),[年収])) =SUM(IF(([年齢]>=40)*([住所地]="大阪"),[年収])) =SUM(IF(([年齢]>=50)*([住所地]="大阪"),[年収])) 計 =SUM(B2:B5) =SUM(IF(([年齢]>=30)*([住所地]="東京"),[年収])) =SUM(IF(([年齢]>=40)*([住所地]="東京"),[年収])) =SUM(IF(([年齢]>=50)*([住所地]="東京"),[年収])) 計 =SUM(B6:B8) =SUM(IF(([年齢]>=30)*([住所地]="名古屋"),[年収])) =SUM(IF(([年齢]>=40)*([住所地]="名古屋"),[年収])) =SUM(IF(([年齢]>=50)*([住所地]="名古屋"),[年収])) 総計 =SUM(B5,B9) 別ファイルよりの抜き出しでこのように同じ作業が毎月あります。 計の行のみ数式は残し、それ以外の数式は値にしたいのです。 このような行が400行ぐらいあります。 VBAで出来るので有れば参考までに教えていただければ助かります。 よろしくお願いいたします。

関連するQ&A

  • エクセル2000:B列に入っている関数をSUM関数だけ残し、そのほかは一括数値に変換したい

    よろしくお願いします。 エクセル2000で、 A列に勘定科目、B列に縦にSUM関数ほか、VLOOKUP関数などいろいろ関数を入れて数字が表示されています。 具体的には予算を作成する過程での資料です。 そこで、B列のSUM関数だけをのこして、それ以外の関数をすべて「数値」(関数で現在計算結果として表示されている数値)に変換したいのです。その方法をお教えくださいませ。 よろしくお願いいたします。

  • IF関数で出した数値をSUM関数で使う

    2010エクセルでの関数について質問があります。 文章での説明でどこまで詳しくご説明できるか不安ですが お付き合い願います。 IF関数で =IF(A13>=25,"10","")と計算し、 セル内に、「10」と表示しています。 さらに、 上記、関数から表示した「10」を SUM関数を使い、 =SUM(A13,B13)と計算しました。 しかし、 IF関数で出した「10」が認識されず足し算されません。 「真の場合」や「偽の場合」で出された数値は 数値として認識されていないのでしょうか? 例えば・・・ B13のセルの数値が「200」であれば、SUM関数を入力しても 「10」が足されることなく、「200」のままで表示されるということです。 どのような方法ならば、足し算されるのでしょうか。 または、関数の使い方が間違っているのでしょうか。 説明が分かりにくく申し訳ありませんが、 宜しくお願い致します。

  • SUM関数で合計を出した行の平均がおかしい。

    タイトルの通りなのですが、 D4~D14までSUM関数で縦計算して、D列の合計を出しています。 同じように、I列まで続いています。 それぞれの列の合計は、15行目に表示されています。 現在、D14のみ数値がはいっていますが、 E列以降は入力していないので、当然15行目は「0」と 表示されています。 私は15列の平均を出したいのですが、 現在D15「1000」だと、平均は「1000」でないといけませんよね。 ですが、その時点で6で割った数字が表示されます。 15行目がD14「1000」     E14「600」 F14,G14.H14.I14はこのとき0表示。 で、平均が「800」になるようにしたいのです。 仕事でつかっているのですが、どうしてもわからず、 みなさんの知恵をお借りしたいと思います。 重複していたらすみませんが、宜しくお願いします。 助けてください!!

  • 続 エクセル イレギュラーなSUM関数

    先程こちらでhttp://oshiete1.goo.ne.jp/qa5428194.html イレギュラーなSUM関数を質問しお答えいただきましたが 新たに問題が出ましたのでもう一度質問いたします *さきほどの質問の内容はこちらです* A列B列があり A5にはA1~A4の合計のSUM関数が入っています。 B5にもSUM関数を入れたいのですが B1~B4はイレギュラーな事があった場合のみ数字を入力し B5にはB1~B4に入力された数字の合計と B列に何も入力されていない隣のA列の合計を表示させたいのです。 例えるなら A1~A4に3を入力 A5はSUM関数がはいっているので12が表示されているとして B列はB1~B3は未入力 B4に7が入力された場合 B5にはA1~A3とB4の合計の16が表示されるようにしたいのです。 B4に7を入力したので隣のA4の3は合計しないという事です。 *回答はこちらです* 回答1 配列関数で =SUM(IF(B1:B4="",A1:A4,B1:B4)) と入力して、Ctrl+Shift+Enterで決定したら、式が{}でくくられて配列関数になります。 式の意味は B1~B4が空白の場合は、A1~A4の値を、それ以外はB1~B4の値を出して合計 回答2 =SUMPRODUCT(NOT(B1:B4)*A1:A4+B1:B4) あたりですかね。not関数のかわりにisblank関数の方が判りやすい かもしれないけど。 TRUE/FALSEの論理値は、四則演算にぶち込むと1/0の数値として扱 われます。また、空は四則演算にぶち込むと0の数値として扱われ ます。だから、「B列が空である」がFALSEならA列とのかけ算はゼ ロになりB列の値が加算され、TRUEならA列の値に1をかけて0を足し たことになります。後はそれを1行目から4行目にわたって配列とし て計算して合計してくれるsumproduct関数に放り込むだけ。 問題はこの方法だと B列に何も入力しない場合、A列の合計がB5に出て来てしまいます。 B列に何も入力しない場合、B5にも何も入力しないようにしたいのです。 ちなみに先程は記述しませんでしたが B列には自動で数字に〔〕が付くようにユーザー定義で指示していて B5はB列が未入力で合計が0でも〔0〕と表示されないように ユーザー定義で "〔"#"〕";;;が入っていてます。 やりたい事をまとめると ●B列には自動で数字に〔〕を付ける ●B1~B4に数字が入力された場合はB5に  B1~B4の合計とB列に何も入力されていない隣のA列の合計を表示させたい  がB列が未入力ならB5に何も表示しない ややこしくて申し訳ありません。 そして確認不足で申し訳ありませんでした。 どうぞ宜しくお願い致します。

  • sum関数で合計が返らない。

    sum関数で、数値の入ったセルの合計を求めようとしましたところ、なぜか合計が1600とならなければならないところ、0になってしまいます。 数値の入ったセルが数値であること(文字列ではない)は、isnumberで確認をしたのですが、原因がわかりません。 どなたか解決方法をご存じの方がいましたらおしえてください。 excel2010です。

  • Excel2003でif関数を使うとSUM関数で反映されません

    A1セルに金額を入力すると、B1に1と表示させる為に=IF(A1,"1","")といった数式を入れております。 さらにC1にBセルの合計値を表示させる為に=SUM(B1)C2には=SUM(B1:B2)と入力しているのですが、B列のセルにIF関数を使った数字『1』が表示されてもC列セルに反映されないので困っています。 ここで質問ですが、A列セルに金額が入力されるとB列セルに数字『1』が表示され、更にC列セルにB列セルの合計値が表示される様な関数等はありますでしょうか?解り難い説明ですいません。 因みにA、B、C列共に1~31までのセルがあります。

  • エクセル イレギュラーなSUM関数

    会社で使うエクセル表を作っていますが困っています。 A列B列があり A5にはA1~A4の合計のSUM関数が入っています。 B5にもSUM関数を入れたいのですが B1~B4はイレギュラーな事があった場合のみ数字を入力し B5にはB1~B4に入力された数字の合計と B列に何も入力されていない隣のA列の合計を表示させたいのです。 例えるなら A1~A4に3を入力 A5はSUM関数がはいっているので12が表示されているとして B列はB1~B3は未入力 B4に7が入力された場合 B5にはA1~A3とB4の合計の16が表示されるようにしたいのです。 B4に7を入力したので隣のA4の3は合計しないという事です。 どうぞ宜しくお願い致します。

  • エクセルで関数SUMなどで

    エクセルで関数SUMなどで 合計を求めた数値が、あるセルにあるとします。 その合計の数値を、そのまま数字として ・・・(関数(計算式)は無くして) 他のセルに貼り付けたいのですが そのような事は出来ますでしょうか・・・。 御教示の程、よろしくお願いいたします。 <m(__)m>

  • EXCEL SUM関数で合計が違う

    以前次のような質問がありました。 QNo.2266177 EXCEL SUM関数で合計値が違う場合 質問者:purepop 教えてください。 EXCELのSUM関数で合計値が違う場合があるのですが、 何が原因で起こるのでしょうか? また、どうすれば直るのでしょうか? ------------------------------------- 私も同じような現象が起こり,困ってしまい,教えてを調べましたが,上の質問には,解決に直接繋がる回答がありませんでした。 ただ,文字列セルは無視されるということです。 ところが,整数だけ入力されてセルが,どうも文字列と認識されているようなのです(セルの表示形式を小数第1位表示の数値にしても,コンマ以下が示されることなく,整数値のままでした)。 それらのセルの値は,他人からカット&ペーストでもらったものです。 数値は,上の入力エリアには,文字列「'3」ではなく,数値「3」と表示されています。 しかたなく,他のセルで当該セル*1をして,値のみ当該セルにコピーすると,小数第1次が0となる,「3.0」と表示でき,合計もただしくなりました。 質問は,このように,「'」がつかない文字列がはいてしまうのはどのようなときでしょうか。  これがわからないと,あぶなくてこまってしまいます。

  • SUM関数の範囲に#N/Aがあっても合計してくれる計算式

    A列に氏名、B列に金額(計算式が入っている)があります。 B列の最終行に合計金額を出したいのですが、 B列に、#N/Aとなるセルがあり、 SUM関数を使うと結果がエラーになります。 なんとかエラー値のセルは無視して合計金額を出す計算式は ないでしょうか。 よろしく御指導下さい。

専門家に質問してみよう