|日付|開催地|英|米|仏|伊|独
|○日|神奈川|壱|壱|●|□|壱
|◎日|神奈川|●|壱|壱|□|□
|△日|神奈川|壱|壱|壱|□|●
|▲日|和歌山|壱|壱|壱|壱|●
このようなデータベース(表)があります。
1行目がタイトルで英~独はチーム名です。
チーム名欄には点数が入力されています。
※漢数字は普通の数字、”□”は空白に読み替えてください
ここで検索用シートにて、例えば開催地を
神奈川で検索すると
|日付|開催地|英|米|仏|伊|独
|○日|神奈川|壱|壱|●|□|壱
|◎日|神奈川|●|壱|壱|□|□
|△日|神奈川|壱|壱|壱|□|●
現在はこんな感じで検索結果が表示されます。
このとき検索結果と共に各チームの点数の合計を
検索結果が表示された最終行の次の行に計算させて
表示したいのですが、全ての点数を加算するのではなく
そのチームについている直近の●より
下の点数のみを合計して表示したいのです。
|日付|開催地|英|米|仏|伊|独
|○日|神奈川|壱|壱|●|□|壱
|◎日|神奈川|●|壱|壱|□|□
|△日|神奈川|壱|壱|壱|□|●
□□□□□□□□壱□参□弐□□□零 ←こんな風に
英は、◎日において●が付いているので合計点は1点。
伊は、神奈川においては得点がないので空白とする。
独は、抽出された最終日において●なので点数は0点となる。
更にこの状態から得点のないチームを除きたい。
ただし、伊は除外するが、独は0点では
あるものの点数はあると考えて残す。
|日付|開催地|英|米|仏|独
|○日|神奈川|壱|壱|●|壱
|◎日|神奈川|●|壱|壱|□
|△日|神奈川|壱|壱|壱|●
□□□□□□□□壱□参□弐□零
↑最終的にこのような形で表示したいのですが
どのように処理すればよいでしょうか。
No.2ベストアンサー
- 回答日時:
#1です。
何処で止まるのか、どんなメッセージで止まるのかを書けばある程度は推測出来ますが、、、
VBAヘルプがインストール済みならば、解らない部分にカーソルを入れて F1キーを押すとヘルプが表示されます。
VBAヘルプが未インストールなら OfficeのCDから追加インストールします。
例) Offset が解らないなら、Offsetという単語の中にカーソルを入れて F1キーを押下
またVBE画面とExcel画面を並べて表示し、VBEメニューのデバック-ステップ実行にして F8キーを押下していくと実行する様子や変数の状況などを確認出来ます。(私が提示したサンプルは殆ど動きがないですが、、、)
Sub Test()
'変数宣言
Dim myCol As Integer, myVal
Dim LRow As Long, myRow As Long
'アクティブシートに対して
With ActiveSheet
'A列の最終行+1の行番号を保持(合計を入れる行とする)
LRow = .Cells(65536, 1).End(xlUp).Offset(1, 0).Row
'タイトル行(1行目)の最終列を探し、最終列から3列目までループ
'右から左に処理をするのは列を削除する可能性があるため
For myCol = .Range("IV1").End(xlToLeft).Column To 3 Step -1
'変数初期化
myVal = 0
'対象列の最終行番号を取得
myRow = .Cells(65536, myCol).End(xlUp).Row
'対象列の最終行番号が1ならばタイトルのみと判断し列を削除
If myRow = 1 Then
.Columns(myCol).Delete
Else
'対象列の最終行番号が1じゃない場合
'最終行から上にループ(変数myRowが1より大か、●じゃないなら)
Do While myRow > 1 And .Cells(myRow, myCol).Value <> "●"
'セルの値を足す
myVal = myVal + .Cells(myRow, myCol).Value
'変数を減らす(上にループするため)
myRow = myRow - 1
Loop
'ループを抜けたら結果を合計行に代入
.Cells(LRow, myCol) = myVal
End If
'次の列へ
Next myCol
End With
End Sub
papayukaさん
今回は本当にご迷惑をおかけし、また大変な失礼が
あった事を深くお詫び申し上げます。
急いでいたものでこの様なマナー違反をしてしまい
深く反省しております。
今後この様な事がないよう気を付けます。
この度は本当に失礼しました。
返答頂き本当にありがとうございました。
No.3
- 回答日時:
ありゃ?
http://okwave.jp/kotaeru.php3?q=2261678
これって失礼な行為ですよ。
少なくともここは「閉じてから」立てるべきだと思いませんか?
#2を書いて馬鹿を見た。
他の質問も閉じない方のようですが。
本当に失礼致しました。
他の質問についても早急に対処致します。
どうか気を悪くなさらないでください。
本当に助かりました。
どうもありがとうございました。
No.1
- 回答日時:
A1から始まるタイトル付きのリストで A1=日付、B1=開催地、C列以降にチームがあると想定してます。
ベタですが、、、
Sub Test()
Dim myCol As Integer, myVal
Dim LRow As Long, myRow As Long
With ActiveSheet
LRow = .Cells(65536, 1).End(xlUp).Offset(1, 0).Row
For myCol = .Range("IV1").End(xlToLeft).Column To 3 Step -1
myVal = 0
myRow = .Cells(65536, myCol).End(xlUp).Row
If myRow = 1 Then
.Columns(myCol).Delete
Else
Do While myRow > 1 And .Cells(myRow, myCol).Value <> "●"
myVal = myVal + .Cells(myRow, myCol).Value
myRow = myRow - 1
Loop
.Cells(LRow, myCol) = myVal
End If
Next myCol
End With
End Sub
大変ありがとうございます。
papayukaさんには以前にもお世話になりました。
あまりにも素早く的確な回答で助けられております。
簡単なシートを作って試してみたところ
思っていた通りの結果になりびっくりしました。
自分ではもっと複雑な作業をしなければならないと
思っていました。(というかまだまだVBAについて
知らない事が多いです)
早速、適用しようと今作っている本シートの方に
組み込んでみたのですが、うまくいかず止まって
しまいました。
できれば上に記述頂いたコードの各行に
VBAの簡単な訳を付けて頂けないでしょうか。
お手数おかけしますがよろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 俳優・女優 いしだ壱成って今現在石川県に住んでないんですか? 1 2022/06/02 15:16
- 俳優・女優 いしだ壱成って今現在石川県に住んでないのですか? 1 2022/06/02 00:58
- 飲食店・レストラン CoCo壱の10辛と蒙古タンメン北極ラーメンはどっちが辛いと思いますか? CoCo壱10辛が1300 2 2022/07/30 01:25
- その他(お金・保険・資産運用) このままドンドン円の価値が下がると、壱万円が硬貨になったりしますか? ダイソーが壱万コイン商品を出し 1 2023/03/27 11:52
- 俳優・女優 中村壱太郎家系図 中村壱太郎 1 2023/05/26 15:26
- タレント・お笑い芸人 昨日は、山本圭壱さんのお誕生日でしたか。 1 2023/02/24 05:33
- タレント・お笑い芸人 山本圭壱さんは今月が、お誕生日ですか。 1 2023/02/08 05:39
- 野球 104回選手権 1 2022/08/08 13:59
- ファミレス・ファーストフード CoCo壱のメニューについて CoCo壱のカレーの種類が多く複雑でカレーの辛さ甘さと例えばビーフソー 1 2022/07/15 22:46
- 飲食店・レストラン ラーメン屋ってぼったくりだよね? あんなの一杯800円とか 少し前まで幸楽苑で290円ラーメンあった 5 2023/03/26 07:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
単語の並列(、や)の仕方教え...
-
お見えですか? と尋ねる言...
-
「つつじ」「羊」「執事」のア...
-
教育実習の謝礼金について
-
エクセル:住所の番地順に並び...
-
語尾に「~わよ」~「だわ」等...
-
味噌汁を吸う・・・方言?
-
1都4県のあと1県は何県?
-
理髪店の休日について
-
近郊ってどこまでの範囲?
-
どんジャンケンポンじゃなくて...
-
布団を「しく」それとも「ひく」
-
「こっちのが」は東京方言では?
-
端から端まで一番距離がある都...
-
0452の市外局番
-
東京湾って漁業権てあるのですか?
-
11月10日は「エレベーターの日...
-
聞き違いされやすい、地名・・・
-
愛知県で「~や」を使う地域は...
-
放送で電話番号をなぜ東京だけ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
単語の並列(、や)の仕方教え...
-
理髪店の休日について
-
お見えですか? と尋ねる言...
-
近郊ってどこまでの範囲?
-
エクセル:住所の番地順に並び...
-
東京都の「町田」って何区?
-
味噌汁を吸う・・・方言?
-
語尾に「~わよ」~「だわ」等...
-
どんジャンケンポンじゃなくて...
-
クラスの名前がアルファベット...
-
最高にダサい名字って何だと思...
-
東京都教員の勤務地
-
教育実習の謝礼金について
-
鉛筆のとがった状態を表す言葉...
-
都内の市内局番が3桁化される前...
-
吉祥寺=「ジョージ」のような...
-
愛知県民に質問。愛知って土地...
-
ホタテの発音
-
東京 と 大阪 どっちが住ん...
-
公立学校教員の移動内示の時期は?
おすすめ情報