プロが教えるわが家の防犯対策術!

たとえば通知表とかでエクセルの表にはA、B、C、D、E、としてAを5 Bを4 Cを3 Dを2 Eを1
として 特定の欄にA、B、C、D、Eの数によって数値が入るようにするにはどのようなマクロを組めばよいのでしょうか?

A 回答 (5件)

=70-CODE(A1)

    • good
    • 5

=SUMPRODUCT((A1:E1="A")*5+(A1:E1="B")*4+(A1:E1="C")*3+(A1:E1="D")

*2+(A1:E1="E"))
    • good
    • 2
この回答へのお礼

ありがとうございます。シンプルで打ちやすそうです

お礼日時:2012/02/14 11:42

こんにちは!


関数でOKということなので・・・
一例です。

↓の画像のように表を作成しておきます。

そして、F2セルに
=IF(COUNTA(A2:E2),SUMPRODUCT((A2:E2=$H$2:$H$6)*$I$2:$I$6),"")
という数式を入れオートフィルで下へコピーすると
画像のような感じになります。

参考になりますかね?m(_ _)m
「エクセル2010で文字に数字を割り当てた」の回答画像3
    • good
    • 1
この回答へのお礼

ありがとうございます。すっごいわかりやすいです。こんな感じで作りたいとおもってました!!

お礼日時:2012/02/14 11:41

>マクロを組めばよいのでしょうか?


 ⇒処理だけの丸投げ質問は止めて下さい。
  先ずは、ご自身で手続きしてみて、その中で問題点や不明点について質問されては
  如何でしょうか。

  例えば、ご質問内容からは関数でも十分に問題解決できそうなのに何故マクロに
  こだわるのかその理由を説明してみても良いと思う。

  
    • good
    • 0

マクロですか?


関数で実現できる内容なんですけど…。

たぶんマクロを教えてもらっても、質問の内容からすると質問者さん自身で
その内容を理解して変更ができるようには思えないのです。
(それって代わりにやってもらうだけで、本質的な解決じゃありませんよね?)


失礼しました。
自分から関数での代用をお奨めします。
COUNT系の関数であれば
 COUNTIF関数でしょう。
例:
 =COUNTIF(A1:E1,"A")*5+COUNTIF(A1:E1,"B")*4+COUNTIF(A1:E1,"C")*3+COUNTIF(A1:E1,"D")*2+COUNTIF(A1:E1,"E")*1
(長くなっているので見づらいと思います。ごめんなさい)
とか。
これ、何をやっているのか分かりますよね?
指定した範囲にある指定した文字の数を数えてその数に対してかけ算をして、それらを足しているだけです。
難しくありませんよね。

このようにあとから見ても分かるような形で作ることをお奨めします。
マクロを教えてもらって分かった気がしても、明日には分からなくなっていることも多いです。
実際、教えてもらったマクロの改変方法を尋ねる人も多くいます。(結構恥ずかしいことですよ。それ)
    • good
    • 0
この回答へのお礼

ありがとうございました
関数とマクロの区別ができませんでした。関数を教えてもらいたかったので
関数で十分です

お礼日時:2012/02/14 10:20

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

このQ&Aを見た人はこんなQ&Aも見ています