エクセルのマクロ、VBAに自信ニキおるか?

1 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:02:57.660 ID:e0cW2BfK0.net
エクセルで大相撲のイロレーティングを計算したいんやが
VBAを使ってうまく自動化することは可能やろか?

20 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:15:25.286 ID:0REOiHeI0.net

さっさと死ねカス

35 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:35:30.837 ID:IPMjTqWs0.net

お前には難しいよ、コードをコピペさせるまでやらないと分からんだろこれ

50 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:45:07.190 ID:nwN8AQ/ur.net

どんな自動化がしたいのかわからん
例えば今年のこの場所でこの力士対この力士では
とか入力すると勝手にレートが出るとかか?

125 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:24:22.627 ID:PJqaeqATM.net

前に作ったときはieオブジェクト立ち上げてブランクぶちこんでから、データのってるアドレス表示してソース解析してデータ抽出して加工して入力してたな
今も使えるかわからんからちょい確認してみる
できなかったら作り直してみるか

3 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:03:57.700 ID:IPMjTqWs0.net

VBA使うほどの計算か?

86 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:29:27.753 ID:e0cW2BfK0.net

>>85
ワイVBAもマクロも何も知らんから調べてみないとわからんな

102 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:45:09.619 ID:e0cW2BfK0.net

>>99
それは15人だな
1場所が15日間だから
ただし休場者が出るとその日は不戦勝になるから計算外だし、当然休場した人はそこまでとなる

54 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:48:24.905 ID:PJqaeqATM.net

何をしてほしいかじゃなく、自分が何をしたいかをまず書けよ!

72 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:04:57.888 ID:6Lydhz5F0.net

安価ミス
>>53これ

60 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:55:34.748 ID:ZozvjYcnM.net

>>22
の説明の時点で詰んだんだが、勝率て白星/取組のことじゃないの?

64 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:58:00.846 ID:nwN8AQ/ur.net

>>61
まあ、そうだね
自動化ってまずデータがあってその先の処理をどうするかの部分出する話だし

70 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:03:33.393 ID:F6OJVeh3r.net

一気に全自動化はお前には無理だ
現在のやり方を少しずつ効率化していくしかないね

82 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:23:01.009 ID:e0cW2BfK0.net

>>80
やってないがわかるで

78 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:13:44.003 ID:e0cW2BfK0.net

>>75
どうやって作るんや?

>>77
ワイが計算するのは幕内の力士だけや
大体40人ちょっとやないかな

94 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:36:20.403 ID:pPc/djUcd.net

>>92
お前もしかして5chでは一人称にワイを使って関西弁で書き込むのが正しいと思ってる?

113 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:10:13.774 ID:+Cw5YCdsd.net

>>111
お前結局なんJ語とか関係なしに知識ひけらかしてドヤ顔したいだけじゃん

32 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:31:15.488 ID:F6OJVeh3r.net

難しい部分が何なのか理解してる?

91 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:32:17.877 ID:jJoCsuy90.net

それは思った
その口調改めないなら続きかかんわ

7 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:07:55.072 ID:e0cW2BfK0.net

>>5
それがわからんのや
どうやればできる?

24 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:23:06.050 ID:e0cW2BfK0.net

で、15人の対戦相手すべての勝率が出たら、それを合計するんや
その合計をZとし、=X+16*(Y-Z)に当てはめる
Xは先場所までのレーティング、Yは実際にその場所で力士があげた勝利数や
例えばすべての対戦相手が自分と同じレーティング=勝率50%だったなら、Zは7.5になるので、
8勝以上すればレーティングは上がるし、7勝以下なら下がるということや

111 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:06:41.461 ID:jJoCsuy90.net

じゃあ変更

さっきのAとBの列はもういらん
Aに四股名を入れてB〜Pまでに対戦相手
こういう形式のリストがないなら手作業で打ち込め
Qにレーティング、Rに勝利数

Sに「=IFERROR(1/(1+10^((VLOOKUP($A$2:$P$41,B2,17,0)-$D2)/400)),””)」

こうだな

65 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:58:18.998 ID:e0cW2BfK0.net

>>62
どこが難しいんやろか?

126 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:25:22.063 ID:jJoCsuy90.net

もう時間だから終わりな

=Q2+16*(R2-SUM(S2:AG2))
これをAH2に入力

129 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:52:04.468 ID:e0cW2BfK0.net

株価のほうはどうなったんや?

17 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:13:40.865 ID:e0cW2BfK0.net

>>15
寝る時間だったからしゃーない

109 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:01:43.423 ID:jJoCsuy90.net

>>107
対戦者一覧のリスト探して貼り付ければいいやん

どのみち「四股名からレーティングを見る」って目視作業が必要になるから無駄

67 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:00:50.119 ID:6Lydhz5F0.net

>>65
エクセルの関数すら理解出来てないところだな
計算する関数だけに絞れば知恵袋でも教えてもらえるな

74 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:05:52.500 ID:Gv+1UAbF0.net

なに普通に答えてんだよゴミどもww
まとめて死んどけよww

52 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:45:42.845 ID:fb26cUnR0.net

お前らがろくにプログラムも書けないゴミ共だと分かったわ
まとめて巣で死ね

84 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:27:09.420 ID:e0cW2BfK0.net

>>83
どうやったらええんやろうか?

58 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:50:56.839 ID:IwqyCrDvd.net

>>52
お前が作ればいいだろsnks

18 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:13:44.825 ID:IPMjTqWs0.net

>>11
お前ここまで全員を勘違いさせたまま進行させてるって相当無能だぞ・・・

87 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:29:34.872 ID:jJoCsuy90.net

で、次はF〜Tの列を使って勝率を求めるわけだが、
>>22のAを求めればいいわけだから、
F2に「=SUMIFS($D$2:$D$42,$B$2:$B$42,NOT(B2),$A2:$A$42,COLUMN(A1))」

と打ち込む
これを対戦相手の数だけ右にドラッグして数式複製

わかるか?

92 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:32:58.724 ID:e0cW2BfK0.net

>>87
ちょっと待って
実際にそこまでやってみるで

38 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:39:35.754 ID:oBhXOBNW0.net

VBAでやるなら単純にワークシートのチェンジイベントか適当なボタンをトリガーにして関数ぶっ込んで出力するだけだし

68 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:02:15.838 ID:e0cW2BfK0.net

>>67
でも使える関数ないやろ?

33 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:33:20.735 ID:e0cW2BfK0.net

>>32
関数が組めないことやな
対戦相手が不規則だし場所ごとにレーティングが変わるから

90 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:31:52.387 ID:fb26cUnR0.net

お前らまだやってんのかよ
htmlとってきて正規表現で整形して計算すればいいだけだろ
どの辺りが難しいのか理解できかねるわ
excelじゃなくてpythonとかrubyとかc#とかでやりゃいいだろ

99 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:41:35.165 ID:jJoCsuy90.net

>>97
じゃあこれまでの式は使えないな

何人対戦するかは一律で決まってる?

62 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:56:37.922 ID:6Lydhz5F0.net

>>57
俺なら5万もらうけど5千円でもやるやついると思うよ
それ位簡単

見る限り自分でやるのは難しいよ

43 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:42:16.860 ID:e0cW2BfK0.net

>>40
そしてどうするんや?

34 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:33:36.245 ID:6Lydhz5F0.net

どこまでを自動化したいのかにもよるが出来ると思うよ
でも無料のレベル超えてるからランサーズとかで金払ってやってもらいな

75 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:08:55.166 ID:F+hPwCLQr.net

処理用のDB作るのに1日?計算で1日くらいかな 計2日くらいで出来るよ

124 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:23:33.869 ID:e0cW2BfK0.net

>>123
おお、できた
よし、全員分やっていくぞ

26 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:25:29.332 ID:IPMjTqWs0.net

アスペっぽいな話が噛み合わない

103 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:45:40.469 ID:6Lydhz5F0.net

レスで解決しようとしてんのか
時間かかるぞー
やるって決めたならデータ貰って作ってやらないと

47 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:43:44.304 ID:aWp4m5GFd.net

猛虎弁使ってるゴミに嬉々としてレスをする恥さらしども

127 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:26:19.730 ID:e0cW2BfK0.net

>>125
頼んだで

>>126
これで全部か?

107 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:55:35.792 ID:e0cW2BfK0.net

>>106
まず対戦相手をF〜Tに入力していくのが大変だな…
それってしこ名で入力したほうがいいんか?それともレーティングを入力したほうがいい?

9 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:09:21.546 ID:3hWndTlwa.net

条件付き書式だけで余裕

8 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:08:25.801 ID:IPMjTqWs0.net

レーティング計算より結果をとってくる部分だろうな面倒なのは

88 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:30:42.546 ID:pPc/djUcd.net

>>86
お前まずその気持ち悪い喋り方やめろよ

30 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:28:08.420 ID:PJqaeqATM.net

何をどうしたいのか
ie立ち上げてデータ置いてあるところにアクセスして呼び出したら?

81 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:22:15.457 ID:e0cW2BfK0.net

>>79
データを入力するのに時間がかかるからや

83 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:25:23.996 ID:c05rUrCV0.net

Microsoft Office Specialist Master取得してる者ですが、VBAじゃなくて条件付き書式で片付きますよ

56 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:50:25.558 ID:ZozvjYcnM.net

>>43
単純な表を並べ替えて計算するのがピボットやそのピボットでまとめたもんをさらに横手に計算式書いたりすればおおよそなんでもできる

61 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:56:02.371 ID:e0cW2BfK0.net

>>59
つまりこれ以上早くはならないってことか…

57 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:50:30.340 ID:e0cW2BfK0.net

>>50
いや、ようするにこの計算をもっと素早く行えるようにしたいんや
今のやり方だと1場所計算するだけで数時間かかっちゃうから

45 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:43:02.375 ID:Wfh0+Lht0.net

>>35
ケツ出せ
俺が分からせてやる

44 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:42:55.793 ID:6Lydhz5F0.net

>>37
計算関係はもちろん出来る
その元となる数字は入力しないといけない
これが他レスのデータソースってやつ
インプットだね

学生でも多分出来るレベルだからそんな高くないから素直に金払った方がいいよ

96 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:38:12.527 ID:fVbnO0B70.net

賭博禁止

39 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:39:46.999 ID:IwqyCrDvd.net

>>27
これをDBにすることがムズい
スクリプトでページまるごと保存して抜き取るしかないか

40 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:40:16.118 ID:ZozvjYcnM.net

ピボットやろな
とりあえず、単純な取り組み結果を入れ込んだテーブルが基本

101 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:44:53.429 ID:jJoCsuy90.net

まあいいや

じゃあFからしばらくは「対戦相手を記入する欄として使え
そうしたら別のやり方で対戦相手のレーティング引っ張ってこれる

あとなんJ語使ったからペナルティでレスしないわ
標準語でごめんなさいできたら続き書いてやるよ

31 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:29:45.230 ID:e0cW2BfK0.net

やっぱ複雑だよなぁ

41 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 08:41:55.304 ID:F6OJVeh3r.net

>>33
その程度の計算はVBA不要

難しいのは参照先がwebページであり、それを手入力してる状態だから、そのデータの取り込みを自動化するのが難しい
webサービスで配信してるサイト探すか
頑張ってスクレイピングしろ

80 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:22:03.334 ID:jJoCsuy90.net

まずC列に四股名を上から順に打ち込む
B列にはそいつが東西どっちかを打ち込む
A2のセルに「=COOUNTIF($B$2:B2,B2)」を打ち込んでから下にドラッグして数式複製

これで東西ごとに出場力士に番号が振られるはず

Dにはレーティング、Eには勝数を入れる

ここまではわかるか?

117 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 10:14:32.743 ID:BuN5HjJh0.net

>>104
教えて欲しかったら土下座でもしてくれ

73 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:05:29.990 ID:e0cW2BfK0.net

>>69
対戦相手も分からんといかんで

>>70
どこら辺を効率化できそうやろか?

71 :以下、?ちゃんねるからVIPがお送りします:2018/01/30(火) 09:04:12.138 ID:6Lydhz5F0.net

>>22
>>24
>>37
これらで出来る
最悪コピペで持ってきて計算させる

もうこれ以上はない

参考になったらSNSでシェアお願いします!

レスを投稿する(名前省略可)

この記事を読んだ方へのおすすめ

最近のコメント

匿名 : 知る人ぞ知るやつ名作アニメ教えて
 ゾイド (2/25)
まぁこ : ビットコイン乞食スレ
 ビットコイン上がるって聞いたのでバイト代と学費とか全部いれち... (2/22)
匿名 : 【初心者用】マイニング情報交換スレ33
 ethOSで、ビデオカードの稼働を確認するのに、https:... (2/22)
ページTOPへ↑