前月平均 前月比4月16日4月15日
17599 102.0%17231 17958

このような形で日々前月平均の値と比べた値を表示するグラフを作っています。
例えば4/17のデータは「前月比」「4月16日」の間に『挿入』して、自動計算させます。

ここで質問です。
1.このときに自動計算する計算式を、
=F3/B3
としている場合に、G列にその日の値を挿入すると
計算式が
G3/B3になってしまいます。

これをF3のままにしておく方法はありませんか?
※「$」をつけてもずれてしまいます。。

2.挿入されたセルの書式設定が自動的に左のセルのものをコピーしてしまいます。自動的に右のセルと同じ書式にするような設定はごぞんじありませんでしょうか。。

以上です。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

興味ある質問なので考えてみました。

質問の意味を取り違えていなければ幸いです。
1.まず、前月比の列は「%」表示と想像しますが、標準にします。これで挿入された列も標準になります。
2.前月比の列には(前月平均がB列で3行目なら)
=TEXT(offset(B3,0,4)/B3*100,"#.#")&"%"
とします。表示は右寄せにします。下にコピーも可能です。B列から4右に行けばF列という意味です。
算式は、offsetでB3セルからの位置を指定しているだけです。列を挿入したとき値は「.%」になりますが、数値を入力すれば計算されます。
    • good
    • 0
この回答へのお礼

これで解決しました!!

お礼日時:2001/04/20 21:35

いちおうマクロの説明をしておきます。

(知ってる場合は無視してください)
VBEの画面の説明だと分かり辛いかと思いますのでマクロの編集で・・・。

[ツール] メニューの [マクロ] をポイントし、[新しいマクロの記録] をクリック。
[ツール] メニューの [マクロ] をポイントし、[記録終了] ツールバーの (記録終了) をクリック。
[ツール] メニューの [マクロ] をポイントし、[マクロ] をクリック。
[マクロ名] ボックスにMacro1を選択して「編集」をクリック

下記のようになってると思いますがいらないので回答NO.3のマクロをコピーして貼り付けたら
編集画面は閉じてエクセルの画面に戻ります。
-----------------------------------------------
Sub Macro1()
'
' Macro1 Macro
' マクロ記録日 : 2001/4/17 ユーザー名 : XXX
'

'
End Sub
-----------------------------------------------
実行させる場合は[ツール] メニューの [マクロ] をポイントし、[マクロ] をクリック。
[マクロ名] ボックスのoshietegooを選択して[実行]
    • good
    • 0

下記のマクロで


>前月平均 前月比 4月16日4月15日
>17599 102.0% 17231 17958
左上から順にA1、B1,C1、D1
左下から順にA2、B2,C2、D2 として

「前月比」「4月16日」の間に列を挿入して
C2にF3/B3の値が出ます。(書式をD2と同じにします)←D2=17231
C1には右のセルの日付の翌日が出ます。
休日かなにかで飛ぶ場合は4/20とか入力して変更してください。

全体的なものが良くわからないのでこんな感じになりました。
適当に替えてくださいね。

前月比とかも数式いれないとけないと思うのですが・・・nishi6さんがoffsetの
説明をされてるので省きます。
------------------------この下から------------------
Sub oshietegoo()

Columns("C:C").Select
Selection.Insert Shift:=xlToRight
Range("C1").Select
ActiveCell.FormulaR1C1 = "=RC[1]+1"

Range("D2").Select
Selection.Copy
Range("C2").Select
Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=R[1]C[3]/R[1]C[-1]"
Range("C1").Select
End Sub
----------------------------この上まで------------------------------
    • good
    • 0
この回答へのお礼

すみません、マクロというものをまったく理解していないのでまだぴんときません。もしかしてこちらの方が良いかもしれない・・・と思いましたが、なぜか巧くいきません。。ということで、次点にさせてください!

お礼日時:2001/04/20 21:36

新しい列を挿入するのではなく、既に入力されている列を


右側に一つずらしてコピーするのではどうですか?

> 前月平均 前月比 4月16日4月15日
> 17599 102.0% 17231 17958

であれば、

(1) 4/16と4/15の列を選択してコピー
(2) 4/15の列を選択して、貼り付け
(3) 元の4/16の列を選択して「削除キー」(内容のクリア)
(4) 先頭の行に 4/17 と入れる

という手順で。
    • good
    • 0
この回答へのお礼

有難うございました!確かにそういう手もありますね。でも、毎日の作業を考えると、nishi6さんの方法が便利だったりします。

お礼日時:2001/04/20 21:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング