• ベストアンサー

面積表の作成について

面積表をExcelで作成したいのですが上手くいかないことがあります。 計算式を入力した隣のセルに計算結果のみ出るようにしたいのですが出来ませんか? 隣のセルに「=(隣のセルの計算式をコピー)」すれば出来るのですが計算式を変更した時に隣のセルも自動的に計算してくれるようにしたいのです。 計算式をコピーせずにする方法があれば教えて下さい。 よろしくお願いします。 Excel2000を使用しています。OSはWIN98です。

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

  • ベストアンサー
  • 0shiete
  • ベストアンサー率30% (148/492)
回答No.4

次のマクロを使ってください。 C1にB1/7を文字列として入れ、その計算結果を D1に入れます。 Sub calcEquation2() Range("c1").Select Selection.NumberFormatLocal = "@" '選択セルの表示形式を文字列に設定 Selection = Range("b1") & "/7" Range("d1").FormulaR1C1 = "=" + Selection End Sub 前に回答したマクロの中に Sub~End Subで囲まれた部分をコピーして もらえれば、一度に処理できます。

yosaku
質問者

お礼

完璧です。すばらしいです。 思っていた通りになりました。 本当にありがとう。ございました。 マクロを少し勉強しようと思います。

その他の回答 (3)

  • 0shiete
  • ベストアンサー率30% (148/492)
回答No.3

補足有難うございます。 マクロが初めてだそうですので、内容を少し解説させていただきます。 Dim myEquation As String 'myEquationという「入れ物」を用意します '中には文字(String)を格納します myEquation = Range("a1") 'myEquationにセルA1の内容を入れます 'ここでmyEquationに「3+4」が入ります myEquation = "=" + myEquation 'myEquationの内容に「=」を付け足します 'ここでmyEquationに「=3+4」が入ります Range("b1").FormulaR1C1 = myEquation 'セルB1にmyEquationの内容を入れます >ただ、1つだけだとこのマクロを実行すれば出来るのですが。2つ3つと増えてきた場合どのように書き足せばいいのでしょうか? 下の3行セットをEnd Sub の上に必要なだけ コピーされるとよいと思います。 (a1,b1の部分を適宜変えてください) ------ myEquation = Range("a1") myEquation = "=" + myEquation Range("b1").FormulaR1C1 = myEquation ------ >次の計算式を「(計算で出た答え)/7」 みたいにセルに挿入は出来ませんか? たとえば、 Range("c1")=Range("b1")/7 を Range("b1").FormulaR1C1 = myEquation の下に書き加えてくだされば可能だと思いますが、 このようなことですか? なお、[ツール]->[マクロ]->[マクロ] のオプションでショートカットを登録できます 便利ですよ。

yosaku
質問者

補足

本当にありがとうございます。 大変助かりました。 恐縮ですが、あとひとつ、お願いします。 「(計算で出た答え)/7」の部分なのですが、いきなり答えではなくて出た答えを使って 式を作ってセルに挿入したいのですが出来ませんか?そんな便利なことが出来るとすごく便利なのですが・・・・・ ちなみに、なんとかショートカットもできました。

  • 0shiete
  • ベストアンサー率30% (148/492)
回答No.2

以下のマクロを使ってみてください。 (使い方がわからない等、何かあれば また、補足ください) ------------- A1に3+4などと、式を入力し、マクロを 実行すれば、B1に答えが表示されます。 Sub calcEquation() Dim myEquation As String myEquation = Range("a1") myEquation = "=" + myEquation Range("b1").FormulaR1C1 = myEquation End Sub

yosaku
質問者

補足

ありがとうございます。 マクロは初めてですが上手く出来ました。 ただ、1つだけだとこのマクロを実行すれば出来るのですが。2つ3つと増えてきた場合どのように書き足せばいいのでしょうか? マクロを書いておいて表を増やして実行すれば必要な部分だけ計算され記入のないところはそのままになるのでしょうか? あと、計算で出た答えを更に割り算したいのです。 次の計算式を「(計算で出た答え)/7」 みたいにセルに挿入は出来ませんか? よろしくお願いします。

  • 0shiete
  • ベストアンサー率30% (148/492)
回答No.1

セルに計算式を入力するのではなく、セルには数字だけを 入力するように設計を変えたほうがよいのではないでしょうか? 不要な欄は数値としてゼロを入力するようにすれば、集計に 反映されないので目的を達成できると思いますが、いかがでしょう?

yosaku
質問者

補足

アドバイスありがとうございます。 不要な欄はゼロで入力とのことですが作った表をCADに取り込む関係上、計算式をそのまま入力したいのです。 ゼロを入力するセルがあるとその部分が空白になってしまいます。計算式も形が複雑な場合と単純な場合で式の長さが変わったり四角形のみの場合や三角形、扇形など組み合わせも様々です。 そのような場合は、どうしたらいいでしょうか?

関連するQ&A

  • エクセルで面積表の作成

    初歩的な質問ですみません。 エクセルで面積表を作成しているのですが、 現在は計算式の列に 5*5 のように計算式を打ち込み その右の列の計に 先ほどの 5*5 をコピーして F2で頭に=をつけて 25 と計算させています。 これを計算式を打ったところで 右の列の計に答えが自動で入るようにしたいのですが、なにか良い方法をご存知の方がいらっしゃいましたら教えていただけないでしょうか? またエクセルでは*が×の表記になっていますが、 *をすべて×に変換し、かつ計算も出来るようには出来ないでしょうか?

  • エクセルでスケジュール表作成

    いつもお世話になっています。 エクセル(オフィスXP使用)でスケジュール表を作成しています。 日付は一番初めのセルに日付を入力すると自動的に日数が入力されるよう計算式を(隣のセル+1)で作成しています。1Pに月曜始まりで2週間分の日数が入っています。曜日は固定なのでWEEKDAY関数は使っていません。(直接曜日を入力しています)土日は網掛けをしています。 以上のスケジュール表で、自動的に祝日を判別し、セルの色を変えたいのですが方法はありますか?出来れば祝日の曜日欄には自動的に祝日と入るようにしたいのですが・・・。条件付書式などを組み合わせてなんとか1ヶ所入力すると全て自動で行えるように出来ないでしょうか?どの関数を組み合わせればよいか、もしくは別の方法(シートを別に作成し、祝日だけを入力すると、スケジュールのシートが自動的に変わったり・・・)など、ありましたら教えていただけると助かります。 宜しくお願いします。

  • 円の面積の求め方

    エクセルで円の面積を求めようと思うのですが、半径ではなく直径を入力すれば隣のセルに自動的に面積が出るように、数式を入力したいのですがどうすればいいですか?

  • 表計算ソフト

     エクセルでもOpenOfficeでも良いのですが、別のセルを参照していて実際には計算式が入っているセルで構成されている表をコピーして別の表を作成する場合に、計算式ではなく計算式の結果を反映させる方法はあるでしょうか?  つまり、セルの中身は+S2*2というような内容であっても、その結果である「123」という数値をコピーしたいということなのですが・・・。

  • VBA 別シートの計算表

    Excelについて。 シートAに、計算表があります。 セルa1に入力した値によって、いくつかのExcel関数を利用して、 セルb1に結果を出力しています。 いつも、手入力でセルa1に値を入力して結果を求めていますが。 今度、シートBに膨大な入力するための数値があるので、VBAで自動化できないかと考えています。 今回の質問は、VBAで記述する際に、シートAの入力セルa1に、シートBの入力値を1つずつ代入していき、結果のセルb1をシートBの入力値の隣に出力していこうと考えています。 シートAのa1に入力値を代入して、すぐに結果b1の値を結果出力セルに代入していいのでしょうか? 計算表(シートA)での計算を時間をおく必要があるのでしょうか?=一旦、他のセルを選択するなど。 よろしくお願いします。 ・計算表での計算時間は、1秒未満です。 ・計算表の計算過程もVBAで書けば済む話ですが、プログラミングには疎いので、計算表をそのまま利用したいと考えています。=入力の代入だけVBAで書いていきたいと思います。 ・その他、アドバイスなどいただければ幸いです。 よろしくお願いします。 Excel2010

  • エクセルの計算結果を、特定の日付へ貼付けるプログラムの作成方法

    エクセルのプログラム作成で質問があります。 今現在、工場の稼働実績を関数にて計算してその出力結果を、 別シートに作成している工場の稼働実績表に手動でコピーして貼付けている作業をしています。 このコピー&ペースト動作をマクロで自動化したいと考えています。 そこでエクセル自体に稼働実績表の日付を比較して対応する場所に自動で貼付ける動作のプログラムを作成するにはどのように組めば良いのでしょうか。 例として下記の条件ので組むときのプログラムを教えてくれると助かります。 例 シート1のセルA2:H5の範囲に製造日、生産量や生産時間などの実データを入力して計算結果をA7:N7に出力(製造日をA7に記載)し、 シート2のセルA10:A35の範囲に工場の稼働日をあらかじめ入力し、ボタン1つで稼働日の隣のセルの行にシート1での計算結果をペーストしたい。

  • 表作成について

    素人質問ですみません。 エクセルで表作成をしたいのですが、グラフウィザードを使用せず、表の中に直接棒グラフを作成することはできないでしょうか。 数字を入力したら、棒グラフが自動的に出るようにしたいのです。 そのようなことは可能ですか? どなたか教えていただけたらと思います。 よろしくお願い致します。

  • エクセルで、FXのトレード表を作成しています。

    エクセルで、FXのトレード表を作成しています。 エクセルは、色々な関数やマクロなどを昔習いましたが、10年程前の事でもうすっかり忘れてしまっているので、思いだしながら作成しています。 そこで、勝率を計算したいのですが、計算式を教えて下さい。 画像に載せているのは今作成中のエクセルです。 画像が悪くて見えにくいかもしれませんが、B8に何%と、勝率を表示させたいです。 表では、6回中3勝3敗です。 2月後半から始めたので、3月以降の表は、実際には回数はもっと増えます。 あと、計算式を入れているセルで、元のセルに数字が入力されていない時は『0』と表示しない方法も教えて下さい。 よろしくお願いします。

  • エクセル 表計算の作成について

    はじめまして ご教授頂ければ幸いです。 今、エクセルを使い表計算を行っています。 おおよそ 表計算(基本的なところ)の作り方は分かるつもりですが 下記のやり方についてご教授頂ければ幸いです。 ■内容及びやりたい事 毎日のデータ(体重変化)をインプットをしたいです。 今までは、表の中に直接(その日のセルに)に入力しておりました。 左のセルに日付け、右のセルに体重入力。 そこで、隣の別シートに入力だけの画面を用意したいのです。 常に毎日 その入力シートの同じ入力部にデータを入れます。 その、毎日のデータが次のシートのその日月のセルの隣のセルにリンクされる様に したいと考えております。 たぶん、いろいろなエクセルを使ったアプリがこんな感じで出来ていますので 機能はあると思いますが、発見できませんでした。もう少し継続しても調べてみます。 この辺を教えて頂ければ嬉しい限りです。また、参考資料になりますWEBサイトをご紹介 して頂いても結構です。 ※尚、PCの環境は Windows 7 64bit エクセルは2007になります。 以上 宜しくお願い致します。

  • Excelの表計算について

    Excelの表計算について 私が使っているのはExcel2003です。 仕事で(在宅ワーク)Excelを使っています。 相手側から入力用のフォーマットが送られてきて、それに入力していくのですが その中に計算式も埋め込まれています。 横の列の2マスぐらいを掛けたり割ったりしたやつがその隣のマスに表示されるのですが PDFファイルの資料を見ながら数値を入力していくのですが、PDFファイル1枚に30件ぐらいの資料が載っています。 それを一気に入力して、Excelを見て間違いがないか確認します。 その際に、一個飛ばして打ってしまった時とかに、セルを挿入して下方向にシフトを選んでいるのですが それをしているせいなのか、表計算がおかしくなっています。 数値を打ってその計算結果が表示された際に、その数値を打った横のセルではなく 一つ上の列のセルに計算結果が表示されます。 表計算式が狂っているせいではなく、私がセルの挿入等をやってるせいかと思うのですが これは再計算とかできないものでしょうか? 気付いたのが1000件以上入力した後だったので 今から全部打ちなおすとなると期日までに間に合わなくて。 回答お待ちしてます。

専門家に質問してみよう