アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセル2002 for WinXP を使っています。
横にその週の日付が月曜から金曜日まで並んでいて、
縦は第何週という風に日付が増えていく表があります。
(簡単に言えばカレンダー)

そこにたとえばAという会議が第1水曜日、第1金曜日と第2月曜日、第3木曜日、第5月曜日のようにとびとびに5回予定されるとします。
それぞれの欄(それぞれの日付欄を縦に2分割しても良いです)に"A"と会議名を入力したら、自動的に1~4まで連番を振ってくれると嬉しいのですが。

最終的には会議は15コくらい、それぞれの会議が10回から20回開催されます。

countifを使うにも、範囲の指定方法がわからず...
関数で何とかできるものでしょうか?
よろしく、お知恵を拝借したいです。

A 回答 (3件)

●訂正のお詫び


まず#2のRange("b2:F6")はRange("b2:F7")に訂正し、表の方も第6週を増やしてください。
●関数を使う方法
#2のVBAと違って、下方向に望む表を出します。
基データ A1:F7 #2と少し変えてます。
月火水木金
1abace
2b
3baaf
4c
5dd
6ad
ワーク列M列M1に=INDEX($B$2:$F$7,INT((ROW()-1)/5)+1,MOD(ROW()-1,5)+1)
と入れて30行まで式を複写。
上部だけあげると
M列  N列
a1
b1
a2
c1
e1
0
b2
0
0
0
b3
a3
a4
f1
・・・以下略
N1に
=IF(M1=0,"",COUNTIF($M$1:M1,M1))と入れてN30まで式を複写・
上だけを示すと、上記N列の通り。
B11に式=OFFSET(B11,-9,0)&INDIRECT("N"&(ROW()-11)*5+(COLUMN()-1))
F11まで+ハンドルを引っ張り式を複写する。
B11:F11を範囲指定してB18:F16まで引っ張る。
A列、第10行に曜日と第何週をコピーしておく。
結果
A10:F16に
月火水木金
1a1b1a2c1e1
2b2
3b3a3a4f1
4c1
5d1d2
6a5d3
のようになりました。
    • good
    • 0

とりあえず、関数はあきらめて、VBAで回答を上げます。


A1:F6に
月火水木金
1abacf
2b
3baaf
4c
5df
a-fは会議名の代わりです。
コードは
標準モジュールに下記を貼り付けて、実行する。
a = Array("a", "b", "c", "d", "e", "f") '会議名
の部分を、本番では会議名を””(半角)で囲って増やしてください。
Sub test01()
Dim cl
a = Array("a", "b", "c", "d", "e", "f") '会議名
Dim kensu(20) '会議の種類数
For Each cl In Range("b2:F6")
If cl = "" Then
Else
For j = 0 To UBound(a)
If cl = a(j) Then
kensu(j) = kensu(j) + 1
cl.Offset(0, 6) = cl & kensu(j)
Exit For
End If
Next j
End If
Next
End Sub
結果G1:L6に
月火水木金
1a1b1a2c1f1
2b2
3b3a3a4
4
5d1
番号は横に左から右、上から下に振ってます。
下側に出すことも可能です。
第1行の曜日、G列の週番号は、人手でコピーしてください。
    • good
    • 0
この回答へのお礼

大変長いこと放っておいてしまって済みません。
一度、このvbaを使ってみたのですが、何をどうして失敗したのか、うまくいきませんでした。
現在は、結局のところ別シートを作成し、そちらで縦長のカレンダーを作成し、会議名、カウント、会議名&カウントの3列をつくり、
元々の横へ曜日が伸びていくタイプのカレンダーから縦長カレンダーを参照する方法で対応いたしました。

2月末には少し余裕ができて、勉強できるかも知れません。そのときに教えていただいたVBAが動かせるように頑張りたいと思います。
ありがとうございまた。

お礼日時:2005/12/28 13:47

下記を補足してください。


たとえば
週 月 火 水 木 金
1 B    A    A
2 A      B 
3       A
4 B

上記のような表でよいですか。
>自動的に1~4まで連番を振ってくれると・・・
連番を振った結果はどうなればよいのですか。

この回答への補足

わかりづらい表現に解答してくださってありがとうございます。
データはimogasiさんのほぼ、ご想像通りです。
それぞれの週を上下2行に分けて、予定が入った日にAと入れれば、その下に第何回目かを表示したいです。
同一セルに"A1"と表示させるのは無理ですよね??
できれば嬉しいですが...

補足日時:2005/10/29 18:14
    • good
    • 0

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