現在、私は仲間内で行っている麻雀の成績をエクセルで集計しております。
エクセルの表計算機能を用いれば、順位や平均ptなどの指標を計算・表示できるのですが、さらに複雑な指標を出そうとすると、さすがに関数が複雑になりすぎてしまいます。
そこで、プログラミングを用いて様々な指標を計算したいと思っています。
この場合、毎週増えていく成績をどのようにプログラム内に蓄積していくのがスマートなやり方なのでしょうか。
僕が思いついたものとしては、とあるフォルダ直下に各週の成績を記入したテキストファイルを保管していき、プログラムを走らせるたびにそれらを全部読み込んでいく手法です。
例)20220108.txt
Aさん/Bさん/Cさん/Dさん
60/3/-20/-43
-25/-10/30/5
4/50/-33/-21
こういうファイルがたくさん保管されていきます。
各ファイルを読み込んでいけば、これまでの成績が集計されて、指標などが計算できるというわけです。
しかしこの方法だと、毎回最初からの記録を読む必要があるので、その点がスマートではないと感じました。
より良い方法がありますでしょうか。
教えていただけると幸いです。よろしくお願いします。
No.2ベストアンサー
- 回答日時:
テキストファイルで管理するくらいならAccessを用いて作成しても宜しいのでは?
VBAもありますけどクエリによる集計で収まるかもしれないですし。
麻雀はした事ないですけどね。
データ量として大きくなるなら、VisualStudioのVBやVC#などでSQLServerに接続してって事もありますけどちょっと敷居が上がりますかね。
データベースならファイルを分ける手間もありませんし〔テーブルが分かれるかは何を作るかで決まりますけど〕、ファイルを起動した際には準備が整ってて後はどんな情報が欲しいか指示すればデータを集め加工も出来るでしょう。
スキルアップしていければと言う条件はありますが。
No.4
- 回答日時:
No.2の補足について。
>結局、点数から順位を出したり、連続トップ回数などを算出したりするときに、プログラミングでリストに格納しますよね?
よね?と言われましても質問者さんが何を求めての事なのかは、麻雀をしない私には不明ですが、どこからリストが出てきたのでしょう?
データベースには抽出したい条件を送り込み、それにヒットしたデータを抽出するって感じです。
その過程において計算が必要ならクエリで関数を使ったり、VBAでユーザー定義関数を作成しておくなどはありますよ。
Pythonをご希望であればそれで宜しいのでは?
私は複数のテキストファイルを弄るのであれば(日付順に読み込むなど)、データベース化された方が楽じゃないかなってだけの事です。
>しかしこの方法だと、毎回最初からの記録を読む必要があるので、その点がスマートではないと感じました。
この部分を重視してです。
No.1
- 回答日時:
こんばんは。
現状、Excelで計算されているとの事ですよね。
プログラムを用いてとの事ですので、Excelの機能の1つである、VBAで
算出されるのは?と思いました。
計算部分のプログラムが見付かりませんが、VBAで下記の様なゲームと
しては見付かりますね。
https://excel-ubara.com/excelvba5/EXCELVBA286.html
http://home.att.ne.jp/zeta/gen/celljong/index.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 達成率の計算式を教えていただきたいです。 KPIでの不良削減達成率の計算方法を教えて下さい。 昨年度 3 2022/04/10 15:11
- その他(教育・科学・学問) 目標率と達成率の計算方法を知りたいです。 例えば、 期間は10日間で目標は100万円の売上を上げる場 4 2022/08/22 13:37
- その他(Microsoft Office) ピボットテーブルへの集計フィールド挿入 1 2023/02/26 11:33
- Excel(エクセル) 荷捌作業効率をあげるためのエクセル関数を教えてください。 8 2022/10/07 08:17
- Excel(エクセル) Excel(エクセル)でフィルター抽出後、非表示の行を計算しないで、合計を算出する方法 【内容】 添 4 2023/01/30 17:17
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- Excel(エクセル) 表計算ソフトcalcにおいて、1時間10分を1.1と表記する方法とそれらを集計する方法は? 4 2022/04/06 16:54
- C言語・C++・C# C言語 3 2022/10/04 15:07
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- その他(コンピューター・テクノロジー) 50台の織機から回転数を取得・集計しモニターに表示したい 2 2022/11/05 15:48
このQ&Aを見た人はこんなQ&Aも見ています
-
今年はじめたいことは?
今年はこれをはじめたい!ということを教えてください!
-
【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
【お題】 『寿司』がテーマの本のタイトルを考えてください
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
AIツールの活用方法を教えて
みなさんは普段どのような場面でAIツール(ChatGPTなど)を活用していますか?
-
今から楽しみな予定はありますか?
いよいよ2025年が始まりました。皆さんには、今から楽しみにしている予定はありますか?
-
エクセルで麻雀の集計表できませんか?
麻雀
-
excelで得点の順位をつけたい(マイナス含む)
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
C++ でファイルを消す関数(??)
-
排他的論理和 BCC(水平パリテ...
-
エクセルで特定のセルのみを任...
-
バッチファイルでウインドウを...
-
pineスクリプト ema のコード
-
C言語についての質問です。 ル...
-
アセンブリ言語で0x4(%esp)の...
-
ASPで小数点の設定
-
VBAの再計算が反映されない件に...
-
C言語 log実装
-
駅間の距離を求め運賃計算するJ...
-
Excel VBA TREND関数について
-
数値計算の高速化 (cos, sin, exp)
-
VBAで関数をつくる
-
ExcelのマクロVBA動作を軽くす...
-
VBでReplace
-
ReportViewerのテキストボック...
-
VBA 九九 Do While
-
趣味で「乗換案内」みたいなソ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
VBAの再計算が反映されない件に...
-
変化させるセルが変化しない
-
排他的論理和 BCC(水平パリテ...
-
EXCELなどで「返す」という表現
-
CとFORTRANの計算速度はどちら...
-
C言語についてです。 再帰を使...
-
matlabで計算終了
-
エクセルで特定のセルのみを任...
-
Visual C++でdebugとreleaseで...
-
VBAで関数をつくる
-
数値計算の高速化 (cos, sin, exp)
-
引き放し法による除算アルゴリ...
-
傾いた四角形内の範囲の条件式
-
趣味で「乗換案内」みたいなソ...
-
三菱シーケンサー works2 の日...
-
バッチファイルでウインドウを...
-
y=(x^2 +3x+1)^4を微分の定義を...
-
モジュラス103の計算とは何でし...
-
VBAでの勤務時間計算
おすすめ情報
Pythonを想定しておりました。基本的な操作(リストや入出力)はできます。
回答ありがとうございます。
初歩的な質問で恐縮なのですが、Accessなどでデータベースを作成したあと、結局、点数から順位を出したり、連続トップ回数などを算出したりするときに、プログラミングでリストに格納しますよね?
(すべてをクエリで処理できるとは思えないので)
となると、プログラムの最初にとりあえずデータベースに読みにいって、値を取得し、そのあと諸々の処理をしていく、というのが普通でしょうか?