[[20071129140819]] 『マクロより数式を優先する』(ぴぴ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロより数式を優先する』(ぴぴ)

はじめまして。
元々マクロを使って作成されている業績表があるのですが、一部間違った考え方でマクロをくんでいるため、誤った結果になる箇所があります。
数式を入力すれば正しい値が得られるのですが、マクロのせいで更新すると数式ごと消えてまた元の誤った結果になってしまいます。

マクロのことは全くわかっていないので、マクロのどの部分を削除すればいいのか検討がつきません。
マクロより、入力している数式を優先させる方法というのはないのでしょうか?

説明下手でわかりづらいかもしれませんが、よろしく御願い致します。


 開くときにマクロを有効にしなければよいのでは?
 (seiya)

seiyaさん、早速の御返事有難う御座います。
間違っているのは一部だけなので、全くマクロを有効にしないという訳にはいかないのです。

 それなら、該当マクロを削除するしかないでしょう...
 VB Editor(マクロ編集画面) に入れますか?
 (seiya)

編集画面には入れるのですが・・・
マクロは大量にあるので、お見せできないと思うのです。
何か別の方法を考えてみます。

ありがとうございました☆

(ぴぴ)


 >全くマクロを有効にしないという訳にはいかないのです

 >数式を入力すれば正しい値が得られるのですが、
 >マクロのせいで更新すると数式ごと消えてまた元の誤った結果になってしまいます。 

 >何か別の方法を考えてみます。 

 あまり褒められた方法ではないのですが、数式を入力する操作をマクロに記録し、
 そのマクロを既存のマクロの最後に走らせる様にすれば、一時しのぎはできます。
 (時間があるときに抜本的修正をする)

 (半平太)

半平太さん、有難う御座います。
御言葉に甘えさせていただきたいのですが・・・
 

   A     B     C         D  

 1売上高  ¥300  ¥1200

 2      4月   5月               

 3 案件  受注額    精算日  精算月             

 4 あ   ¥100    07/4/1      4月

 5 い   ¥200    07/4/15     4月

 6 う   ¥300    07/5/10     5月

 7 え   ¥400    07/5/12     5月

 8  お   ¥500    07/5/15     5月

という様な表があります。今B1には =SUMIF($D$4:$D$8,B2,$B$4:$B$8)という数式を入れています。
これをマクロにするとしたらどうすればよいのでしょうか?   
(ぴぴ)


 単純に一行、こんなものですよ ^^
         ↓
 Sub Macro1()
     Range("B1").FormulaR1C1 = "=SUMIF(R4C4:R8C4,R[1]C,R4C2:R8C2)"
 End Sub

 ※ 上は、当該シートがアクティブになっているのが前提になっています。
    もし、そうなっていない恐れがあるときは下の様にして、「Sheet1」に実際のシート名を入れて下さい。

 Sub Macro1()
     Worksheets("Sheet1").Range("B1").FormulaR1C1 = "=SUMIF(R4C4:R8C4,R[1]C,R4C2:R8C2)"
 End Sub

  (半平太)

御返事大変遅くなってすみません。
試したところ、何とかできるようになりました。

半平太さん、ありがとうございました。

(ぴぴ)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.