あなたの習慣について教えてください!!

Excelで、マクロを使い以下のようなことをしようとしていますが
煮詰まってしまい困っております。どなたかお助けいただけないでしょうか。
初心者ですので、勉強不足で申し訳ございません。

1. A列にずらりと語句が並んでいる(B列は数値のデータ)
2. C列にマクロでSUMIF関数を自動的に入れていく
3. 2のSUMIF関数の「条件」に、A列の語句を代入していく
4. 3の語句の前後にはワイルドカード「*」を入れる
5. 2~4を繰り返し、A列の語句の数だけB列に作成

具体的に申しますと、下記のような関数なのですが、
=SUMIF($A$1:$C$100,"*中央区*",$B$1:$B$100)
この例で言いますと、"中央区"の部分のみをA列から
一つずつ拾ってきたいのです。
ワイルドカードを使う必要がなければマクロは不要(セルのアドレスを
予め設置しておけばOKのはず)だと思いますが、
どうしてもワイルドカードでデータを拾う必要が生じています。

文字列を取ってきて組合わせていくマクロが存在するのでしょうか、
リファレンスや検索エンジンで一週間ほど調べましたがどうにも解決しませんでした。
どうかよろしくお願いいたします。

A 回答 (2件)

>ワイルドカードを使う必要がなければマクロは不要


ワイルドカードであってもマクロは不要です。C1セルに

 =SUMIF($A$1:$A$100,"*"&A1&"*",$B$1:$B$100)

を入力してC100までコピーしてください。
    • good
    • 0
この回答へのお礼

迅速なご回答、ありがとうございます、無事に解決いたしました!!
ほんと、勉強不足ですね。。。
マクロレベルの話ではないとは。。。
本当にありがとうございます!
資料作成がやっと終わりました!

No2の方のご指摘通り、質問の例題が間違っていたのですが、
質問の意図を汲んでいただきありがとうございました。

お礼日時:2007/04/11 17:21

"*中央区*"という条件ってことはA列の値は



札幌市中央区1丁目
津市港区3丁目
中央区5丁目
ひたちなか市浜野2-3

などということですよね?そのA列の値を拾って、どういう基準で中央区だけを取り出して前後にワイルドカードをつけるつもりでしょうか?やりたいことが解りません。

この回答への補足

質問をきちんと読んでいただき、ありがとうございます。
矛盾した例題を書いてしまいました。申し訳ございませんでした。
QA参照用に、質問の例題部分を修正させていただきます。
------
1. A列にずらりと語句が並んでいる
2. B列にマクロでSUMIF関数を自動的に入れていく
3. 2のSUMIF関数の「条件」に、A列の語句を代入していく
4. 3の語句の前後にはワイルドカード「*」を入れる
5. 2~4を繰り返し、A列の語句の数だけB列に作成

具体的に申しますと、下記のような関数
=SUMIF(別シート!$A$1:$B$100,"*中央区*",別シート!$B$1:$B$100)
中央区"の部分のみをA列から一つずつ拾う
-------
ご指摘誠にありがとうございました。
No.1の回答をいただき解決いたしました。

補足日時:2007/04/11 17:13
    • good
    • 0

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