!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付ける
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part66
https://mevius.5ch.net/test/read.cgi/tech/1589085825/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
Excel VBA 質問スレ Part67
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 33da-3+hg)
2020/06/26(金) 02:01:29.56ID:uDfmpksE0674デフォルトの名無しさん (ワッチョイ 99da-xE3T)
2020/07/30(木) 09:15:44.99ID:sgyBPyzj0 >>673
できる業者に委託する金だけだせばいいんじゃね
できる業者に委託する金だけだせばいいんじゃね
675デフォルトの名無しさん (テテンテンテン MMee-LTj5)
2020/07/30(木) 09:20:25.92ID:oxoY3p6DM そんなもんDBに投入してSQLで一発だろ
676デフォルトの名無しさん (ラクッペペ MMee-LxoB)
2020/07/30(木) 09:23:42.54ID:JMS2FJh9M 一口ごとに1枚プリントアウト。この時なるべく小さい紙に印刷するのがポイント!
後は紙を穴の空いたボックスに詰めて目隠しした担当者が300枚を抜き出す
後は紙を穴の空いたボックスに詰めて目隠しした担当者が300枚を抜き出す
677デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/07/30(木) 09:36:09.05ID:tHevDqCo0 個人の氏名ごとに口数記録するじゃんね
口数の合計値をlongにいれるじゃんね
longの最大は21億〜だからいけるじゃんね
んでその合計値が例えば20万だったら
20万の中からRandomをうまいこと使って300個の数字を抽出すればいいだけじゃんね
各数字は氏名ごとに記録した口数を上から合計したときの数値と一致するわけじゃんね
簡単じゃんね
口数の合計値をlongにいれるじゃんね
longの最大は21億〜だからいけるじゃんね
んでその合計値が例えば20万だったら
20万の中からRandomをうまいこと使って300個の数字を抽出すればいいだけじゃんね
各数字は氏名ごとに記録した口数を上から合計したときの数値と一致するわけじゃんね
簡単じゃんね
678デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/07/30(木) 09:43:40.24ID:tHevDqCo0 抽出するには、いろんな方法あるけど
位ごとに数字を選ぶみたいなのでもいいじゃんね
例えば合計値が232,984口だったとしたら
10万の位→2,1,0から1つえらぶ
1万の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
千の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
百の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
10の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
1の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
これで1つの数字ができる
これを300回繰り返すんだけど
0になったり、重複したりしたら無効でやり直しするじゃんね
位ごとに数字を選ぶみたいなのでもいいじゃんね
例えば合計値が232,984口だったとしたら
10万の位→2,1,0から1つえらぶ
1万の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
千の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
百の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
10の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
1の位→9,8,7,6,5,4,3,2,1,0から1つ選ぶ
これで1つの数字ができる
これを300回繰り返すんだけど
0になったり、重複したりしたら無効でやり直しするじゃんね
679デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/07/30(木) 09:44:36.17ID:tHevDqCo0 てかどういう風でもいいからゴリゴリやっていくのが面白いのにさー
スマートじゃなくてもいいからゴリゴリいこうぜぇー
スマートじゃなくてもいいからゴリゴリいこうぜぇー
680デフォルトの名無しさん (ドコグロ MM9a-Fc3l)
2020/07/30(木) 09:48:09.38ID:P52O6TU4M おまえら食いつきがいいな
681デフォルトの名無しさん (JP 0H62-5jfS)
2020/07/30(木) 09:51:09.03ID:G1iLlMLAH 最初口数だして横に5000まで数字並べて
IF(1〜5000<口数,RAND(),"")って全部のセルに埋めてたら
20000×5000の関数が動くからフリーズして困ったんだよね・・・
これをやったあとMAX関数で一番でかい数字引っ張ってきて
それをソートして上から300人ってすれば重複当選もないし問題ないかと思ってた
まさか4〜500万購入ユーザーがいるなんて聞いてなかったから気軽に引き受けちゃったよ・・・
IF(1〜5000<口数,RAND(),"")って全部のセルに埋めてたら
20000×5000の関数が動くからフリーズして困ったんだよね・・・
これをやったあとMAX関数で一番でかい数字引っ張ってきて
それをソートして上から300人ってすれば重複当選もないし問題ないかと思ってた
まさか4〜500万購入ユーザーがいるなんて聞いてなかったから気軽に引き受けちゃったよ・・・
682デフォルトの名無しさん (JP 0H62-5jfS)
2020/07/30(木) 09:53:13.58ID:G1iLlMLAH 取り敢えず2万人の口数を順番に足していったリスト作って
合計数からランダムに300個抜き出して
それを作ったリストと照らし合わせればいいのか
サンクス、突破口見えた気がする
VBAじゃなくてもいいのか・・・ありがとう
合計数からランダムに300個抜き出して
それを作ったリストと照らし合わせればいいのか
サンクス、突破口見えた気がする
VBAじゃなくてもいいのか・・・ありがとう
683デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/07/30(木) 09:56:06.13ID:tHevDqCo0 それなんも工夫ないじゃんね
つまらないじゃんね
のーたりんじゃんね
つまらないじゃんね
のーたりんじゃんね
684デフォルトの名無しさん (ワッチョイ d540-Y3wz)
2020/07/30(木) 10:27:51.92ID:EC4xcxw30 >>673
A列に人の名前なりIDなり入れる
B列に口数
C列は当選番号の割り振りで、C1はB1の値、CnはC(n-1)+Bnとし、C(n-1)+1〜CnがAnの当選番号
これと独立して300回ランダム*全口数+1で当選番号300個を作る
それを1つずつ誰のものか確認して当選者とする
A列に人の名前なりIDなり入れる
B列に口数
C列は当選番号の割り振りで、C1はB1の値、CnはC(n-1)+Bnとし、C(n-1)+1〜CnがAnの当選番号
これと独立して300回ランダム*全口数+1で当選番号300個を作る
それを1つずつ誰のものか確認して当選者とする
685デフォルトの名無しさん (ワッチョイ 7a4f-1TqB)
2020/07/30(木) 10:35:23.48ID:cH8Va6i20 じゃんね、ってどこの方言だろ
東京ではじゃんとは言うけど
じゃんねはあまり使わない
使ったとしてもここまで執拗に使わないじゃんね
東京ではじゃんとは言うけど
じゃんねはあまり使わない
使ったとしてもここまで執拗に使わないじゃんね
686デフォルトの名無しさん (JP 0H62-5jfS)
2020/07/30(木) 11:11:00.39ID:G1iLlMLAH この方式だと重複当選しちゃうな・・・
2〜3回繰り返して重複当選除外してやるかいね
どうせ1回しかやらんし
2〜3回繰り返して重複当選除外してやるかいね
どうせ1回しかやらんし
687デフォルトの名無しさん (ワッチョイ 5d01-Dfq1)
2020/07/30(木) 11:50:07.24ID:RHK/Swp/0 ああ、重複当選なしなのね
じゃあ300じゃなくて400ぐらいやっといて、301以降は順に重複時用の補欠にすればいい
じゃあ300じゃなくて400ぐらいやっといて、301以降は順に重複時用の補欠にすればいい
688デフォルトの名無しさん (ワッチョイ d663-uaxO)
2020/07/30(木) 11:50:49.23ID:A5neBprE0 2口の人は2回当選して然るべきでは?
口数ってそういうモノだと思うが
口数ってそういうモノだと思うが
689デフォルトの名無しさん (JP 0H62-5jfS)
2020/07/30(木) 11:58:26.01ID:G1iLlMLAH 複数当選してしまうと総額が景品表示法に引っかかってしまうんですよ・・・
690デフォルトの名無しさん (ワッチョイ ce8c-UdrD)
2020/07/30(木) 12:09:03.16ID:LgbrNaJ+0691デフォルトの名無しさん (JP 0H62-5jfS)
2020/07/30(木) 12:11:02.85ID:G1iLlMLAH692デフォルトの名無しさん (ワッチョイ 79ce-Xvfy)
2020/07/30(木) 12:18:53.15ID:AlO/S9Es0693デフォルトの名無しさん (ワッチョイ 99da-xE3T)
2020/07/30(木) 12:58:00.60ID:sgyBPyzj0 知識0でやろうとするのが間違いだと思うが
694デフォルトの名無しさん (ワッチョイ 017c-1vA1)
2020/07/30(木) 13:01:49.26ID:5b+GEPmC0 >>673
何の手間?
何の手間?
695デフォルトの名無しさん (JP 0H62-5jfS)
2020/07/30(木) 13:20:10.92ID:G1iLlMLAH VBAの基礎を学んで言われたことを遂行するための知識を得るための手間かな・・・ほんと知識0なんで必要ならこれを機に手を出してみようかなと
696デフォルトの名無しさん (ワッチョイ 4583-23Ku)
2020/07/30(木) 13:41:23.22ID:/qyU4NXl0 なんか前もこんな奴居なかった?
697デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/07/30(木) 13:59:59.21ID:tHevDqCo0 ビール飲みながらすげー適当に組んでみたんだけどあげちゃだめなの?
てかコード貼ったら使えるレベルなん?
うちの3世代ぐらい前のi5のPCで300件で5分ぐらいかかりそうな感じだけど
てかコード貼ったら使えるレベルなん?
うちの3世代ぐらい前のi5のPCで300件で5分ぐらいかかりそうな感じだけど
698デフォルトの名無しさん (ワッチョイ 7a4f-1TqB)
2020/07/30(木) 14:12:07.28ID:cH8Va6i20 >>697
いや、仕事しようよ
いや、仕事しようよ
699デフォルトの名無しさん (オッペケ Sr05-/T2I)
2020/07/30(木) 14:18:10.19ID:vzRw0yWJr >>658
回答頂きましてありがとうございます
再度の質問になえうのですが
getelement.所属クラス.getelementbytagname("a")(インクリメント変数).length -1
messageボックスでouterhtml出力
上記で取得されてる要素を参照すると
1の時、label=page1 何だかcheck=true
2の時、label=page2 何だかcheck=false
3の時、label=page1 何だかcheck=false
4の時、label=page4 何だかcheck=false
5の時、label=page3 何だかcheck=false
上記のような要素取得がなされており、番号順にページ遷移がなされてないことがわかりました
タグ以外にラベルやタイプ等で特定要素を抽出する方法はありませんでしょうか
回答頂きましてありがとうございます
再度の質問になえうのですが
getelement.所属クラス.getelementbytagname("a")(インクリメント変数).length -1
messageボックスでouterhtml出力
上記で取得されてる要素を参照すると
1の時、label=page1 何だかcheck=true
2の時、label=page2 何だかcheck=false
3の時、label=page1 何だかcheck=false
4の時、label=page4 何だかcheck=false
5の時、label=page3 何だかcheck=false
上記のような要素取得がなされており、番号順にページ遷移がなされてないことがわかりました
タグ以外にラベルやタイプ等で特定要素を抽出する方法はありませんでしょうか
700デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/07/30(木) 14:23:09.16ID:tHevDqCo0 >>698
でしゅよねー(ろれつが回らない
でしゅよねー(ろれつが回らない
701デフォルトの名無しさん (ワッチョイ 017c-1vA1)
2020/07/30(木) 14:30:10.36ID:5b+GEPmC0702デフォルトの名無しさん (アウアウエー Sa22-DfbS)
2020/07/30(木) 15:27:13.51ID:YhpZ6thja703デフォルトの名無しさん (ワッチョイ 5d01-Dfq1)
2020/07/30(木) 15:33:07.63ID:zHAo07P50 Excel VBAの問題じゃなくてそれ以前の問題だよな
704デフォルトの名無しさん (スッップ Sd9a-nhZs)
2020/07/30(木) 15:36:31.06ID:keIwCUAVd perl,pythonスレに続く釣りなのかね?
705699 (オッペケ Sr05-/T2I)
2020/07/30(木) 15:36:51.50ID:THFUAhsVr innertextでクラス配下のaタグの行を1つずつ抽出でfor eachでページ番号のラベルに引っ掛けて処理するっていうのは可能でしょうか
706デフォルトの名無しさん (オッペケ Sr05-/T2I)
2020/07/30(木) 17:31:34.81ID:THFUAhsVr すいませんある程度自己解決しましたが、取得した要素にouterhtmlで抽出したところ番号順にタグ情報が取得出来たのですが、outerhtmlに続けて.clickだとエラーになります
一旦変数に格納しないとクリック出来ませんでしょうか
一旦変数に格納しないとクリック出来ませんでしょうか
707デフォルトの名無しさん (スプッッ Sd7a-u4+4)
2020/07/30(木) 19:05:02.57ID:GYhlOBUpd708デフォルトの名無しさん (ワッチョイ d610-1vA1)
2020/07/30(木) 23:18:28.10ID:i0KpmXdS0 >>707
すいません
Dim table_date As MSHTML.HTMLDocument
上の宣言でまずouterhtmlの取得要素を格納する変数を宣言する必要があると思いますが
ユーザー定義型エラーが出てしまい、調べたところ参照設定で[Microsoft HTML Object Library]を有効にしないと使えないという事ですが、
上記のHTMLDocumentオブジェクトで宣言したマクロを他のPCのエクセルでも使用する場合、イチイチ参照設定を有効にしないと使えないのでしょうか
あともう1つの質問になりますが、
table_date = getelementclass(objie,"所属class名").outerhtml
上記でまず対象のタグが所属するclassの全要素を変数に格納したあと
for i = 0 to 10
table_date.getelementsbytag("a")(i).click
next
変数に格納されたhtml文のaタグ要素を一行ずつ取り出してボタンクリックしたいのですが、
この構文で可能でしょうか
すいません
Dim table_date As MSHTML.HTMLDocument
上の宣言でまずouterhtmlの取得要素を格納する変数を宣言する必要があると思いますが
ユーザー定義型エラーが出てしまい、調べたところ参照設定で[Microsoft HTML Object Library]を有効にしないと使えないという事ですが、
上記のHTMLDocumentオブジェクトで宣言したマクロを他のPCのエクセルでも使用する場合、イチイチ参照設定を有効にしないと使えないのでしょうか
あともう1つの質問になりますが、
table_date = getelementclass(objie,"所属class名").outerhtml
上記でまず対象のタグが所属するclassの全要素を変数に格納したあと
for i = 0 to 10
table_date.getelementsbytag("a")(i).click
next
変数に格納されたhtml文のaタグ要素を一行ずつ取り出してボタンクリックしたいのですが、
この構文で可能でしょうか
709デフォルトの名無しさん (ワッチョイ fa63-uaxO)
2020/07/30(木) 23:22:34.48ID:b3ddbfY40 ちゃんもリファレンスを読んで返り値の型を確認しようね
710デフォルトの名無しさん (ワッチョイ d68e-nhZs)
2020/07/31(金) 00:01:53.71ID:sBpjKr+V0 >>708
そろそろ死ねよ
そろそろ死ねよ
711デフォルトの名無しさん (アウアウウー Sa09-4GEq)
2020/07/31(金) 06:14:13.92ID:mPBeAG88a >>708
まず自分で考えるくせを付けたほうがいいよ
まず自分で考えるくせを付けたほうがいいよ
712デフォルトの名無しさん (ワッチョイ 4102-UD9X)
2020/07/31(金) 07:35:13.13ID:Seq7lwgB0 ソルバーを使おうと思ってまずは機能するか簡単なものを作ってみたんですが、
与える値によって解があるにも関わらず機能したりしなかったりするんですが何がおかしいのでしょうか
A2 9
A3 15
A4 30
B2 空白
B3 空白
B4 空白
C2 =SUMPRODUCT(A2:A4,B2:B4)
として、値45で実行すると正しく解が見つかるのですが
値60で実行すると解が見つけられないのです。
45の場合
https://i.imgur.com/eAOJ9Ju.jpg
https://i.imgur.com/eCc0hFi.jpg
60の場合
https://i.imgur.com/t2CqGfo.jpg
https://i.imgur.com/lNC6CDZ.jpg
与える値によって解があるにも関わらず機能したりしなかったりするんですが何がおかしいのでしょうか
A2 9
A3 15
A4 30
B2 空白
B3 空白
B4 空白
C2 =SUMPRODUCT(A2:A4,B2:B4)
として、値45で実行すると正しく解が見つかるのですが
値60で実行すると解が見つけられないのです。
45の場合
https://i.imgur.com/eAOJ9Ju.jpg
https://i.imgur.com/eCc0hFi.jpg
60の場合
https://i.imgur.com/t2CqGfo.jpg
https://i.imgur.com/lNC6CDZ.jpg
713デフォルトの名無しさん (アウアウエー Sa22-DfbS)
2020/07/31(金) 08:36:27.75ID:BJAFpQuia714デフォルトの名無しさん (ワッチョイ fa63-uaxO)
2020/07/31(金) 09:39:24.31ID:j4Q2HRqw0 局所最適なんだから初期値によって結果が異なるのは自明です
715デフォルトの名無しさん (ワッチョイ fa2f-SLIs)
2020/07/31(金) 11:33:16.53ID:QyaenPE80 で、それのどこにVBAが関係してるんだ?
716デフォルトの名無しさん (スプッッ Sd7a-u4+4)
2020/07/31(金) 12:13:10.42ID:QmvWOqJdd717デフォルトの名無しさん (ワッチョイ 7a4f-1TqB)
2020/07/31(金) 12:28:54.85ID:TQ16TWaV0 質問です
シェイプを回転させたくて
シェイプのRotationX,RotationY,RotationZを弄ってみたのですが、
Z軸は上手く行くのですが、X軸、Y軸はその軸に併せて縮小するだけで全く奥行きが出ません。
これは設定するプロパティが足りないのでしょうか?
それともこういうものなんでしょうか?
シェイプを回転させたくて
シェイプのRotationX,RotationY,RotationZを弄ってみたのですが、
Z軸は上手く行くのですが、X軸、Y軸はその軸に併せて縮小するだけで全く奥行きが出ません。
これは設定するプロパティが足りないのでしょうか?
それともこういうものなんでしょうか?
718デフォルトの名無しさん (アウアウエー Sa22-DfbS)
2020/07/31(金) 13:03:40.39ID:qhJJRQ9da 2.5Dとか擬似 3Dに過ぎないからでしょ
719デフォルトの名無しさん (ワッチョイ 4102-UD9X)
2020/07/31(金) 20:02:27.14ID:Seq7lwgB0720デフォルトの名無しさん (ワッチョイ 65da-xE3T)
2020/08/01(土) 08:39:00.72ID:kuObS2ra0721デフォルトの名無しさん (ワッチョイ 4583-23Ku)
2020/08/01(土) 09:22:34.54ID:wQymbaU60 部屋の模様替え後のレイアウトをExcelで作ろうとしてた人はいたな
722デフォルトの名無しさん (ブーイモ MMbe-PQMy)
2020/08/01(土) 09:31:20.60ID:znOplMqnM 一軒家の建築図面をExcelで作ろうとしてる人もいるかもしれない
723デフォルトの名無しさん (ワッチョイ 1602-xE3T)
2020/08/01(土) 11:11:05.09ID:Y2rZE5zP0 セルの色で絵を描くおじいちゃんがいる
724デフォルトの名無しさん (ワッチョイ 79ce-Xvfy)
2020/08/01(土) 11:15:30.51ID:qSPnGZZQ0 15年ぐらい前に、セルに色を塗ってゲームやアニメを作るのがはやった
725デフォルトの名無しさん (アウアウカー Sa5d-DfbS)
2020/08/01(土) 11:19:29.08ID:biQ1QRTHa Excelで 3Dモデル表示は出来るぞ?
ホーム
わかできブログ
ExcelやWordでも3Dモデルが扱えるというので試してみた
https://www.wakarutodekiru.com/blog/tips/673.html
https://www.wakarutodekiru.com/blog/wp-content/uploads/2020/05/2017-09-25_15h52_57-600x447-1.png
ホーム
わかできブログ
ExcelやWordでも3Dモデルが扱えるというので試してみた
https://www.wakarutodekiru.com/blog/tips/673.html
https://www.wakarutodekiru.com/blog/wp-content/uploads/2020/05/2017-09-25_15h52_57-600x447-1.png
726デフォルトの名無しさん (ワッチョイ 79ce-Xvfy)
2020/08/01(土) 11:33:13.92ID:qSPnGZZQ0 できるかできないかじゃなくて、表示パフォーマンスや製作コストが実用レベルかどうかが重要では
727デフォルトの名無しさん (アウアウカー Sa5d-DfbS)
2020/08/01(土) 11:39:41.69ID:biQ1QRTHa728デフォルトの名無しさん (ワッチョイ 5d01-UdrD)
2020/08/01(土) 11:47:14.76ID:bRba9mah0 エクセルを禁止しないと日本のITは韓国に追いつけない。
エクセルのせいで数学がわからない子供たちが増えている。
Ubuntuを使うべき。
エクセルのせいで数学がわからない子供たちが増えている。
Ubuntuを使うべき。
729デフォルトの名無しさん (ワッチョイ 99da-xE3T)
2020/08/01(土) 12:06:15.89ID:51ANSeyq0 EXCELとの因果関係を証明せよ
730デフォルトの名無しさん (ワッチョイ 4583-23Ku)
2020/08/01(土) 12:21:54.41ID:wQymbaU60 そもそも子供はExcel使ってねーだろ
なんか電波でも出してるのか?
なんか電波でも出してるのか?
731デフォルトの名無しさん (アウアウカー Sa5d-DfbS)
2020/08/01(土) 12:29:20.74ID:biQ1QRTHa ソロバンから電卓に代わってもそうゆう人って一定数いるよね
小学生からExcel使えるなら
FAXで集計してるコロナ関係者よりマシ
小学生からExcel使えるなら
FAXで集計してるコロナ関係者よりマシ
732デフォルトの名無しさん (ワッチョイ 1d02-pXIf)
2020/08/01(土) 12:35:20.61ID:GdrGS70y0 そうゆうとか言ってる人はVBAの前に日本語勉強したほうがいいよ
733デフォルトの名無しさん (ワッチョイ 5d01-UdrD)
2020/08/01(土) 12:49:17.09ID:bRba9mah0 小学生のIT教育でUbuntuのインストールを教えるべきでは?
734デフォルトの名無しさん (アウアウカー Sa5d-DfbS)
2020/08/01(土) 12:59:14.62ID:biQ1QRTHa すいませんすみませんあーざーっす
「なんで、そーゆーこと言うの?」さおいふ
オッハーマヨチュチュ
タイガーアッパっパー
「こちらの方でよろしかったですか?」
「おにぎり温めなかったほうで大丈夫ですか?」
「お買い物袋はお持ちでありませんでかまいませんか?」
「なんで、そーゆーこと言うの?」さおいふ
オッハーマヨチュチュ
タイガーアッパっパー
「こちらの方でよろしかったですか?」
「おにぎり温めなかったほうで大丈夫ですか?」
「お買い物袋はお持ちでありませんでかまいませんか?」
735デフォルトの名無しさん (ワッチョイ 2590-roBb)
2020/08/01(土) 13:03:30.83ID:cAfu1ZYc0736デフォルトの名無しさん (ワッチョイ 5d01-UdrD)
2020/08/01(土) 13:04:03.06ID:bRba9mah0 UbuntuはスパコンのOSにも使われているので、数学に強いです。
エクセルは禁止にするべきです。
エクセルは禁止にするべきです。
737デフォルトの名無しさん (ワッチョイ 7a4f-1TqB)
2020/08/01(土) 13:50:27.99ID:VVRkNkWF0 >>736
金持ちLinuxおじさんこっちに来てまで迷惑掛けるなよ
金持ちLinuxおじさんこっちに来てまで迷惑掛けるなよ
738デフォルトの名無しさん (ワッチョイ d6b3-UD9X)
2020/08/01(土) 17:35:39.71ID:l0aqZI9e0 マクロ実行ボタン1を押すとマクロ実行ボタン1が消えて
新しいマクロ実行ボタン2が出現。ボタン2を押すとマクロ実行ボタン3が出現するような
繰り返し動作を行いたいのですが可能でしょうか?
コードを教えていただきたく、よろしくお願いします。
新しいマクロ実行ボタン2が出現。ボタン2を押すとマクロ実行ボタン3が出現するような
繰り返し動作を行いたいのですが可能でしょうか?
コードを教えていただきたく、よろしくお願いします。
739デフォルトの名無しさん (ワッチョイ cd92-23Ku)
2020/08/01(土) 17:45:47.31ID:BG2/nyCb0 >>738
つVisible
つVisible
740デフォルトの名無しさん (ワッチョイ 7aef-xE3T)
2020/08/01(土) 18:55:56.93ID:7hgxy1yb0 >>738
少し違うけど、こうした方が楽
With マクロ実行ボタン
Select Case .Caption
Case "マクロ実行ボタン2"
マクロ2
.Caption = "マクロ実行ボタン3"
Case "マクロ実行ボタン3"
マクロ3
.Caption = "マクロ実行ボタン1"
Case Else
マクロ1
.Caption = "マクロ実行ボタン2"
End Select
End With
少し違うけど、こうした方が楽
With マクロ実行ボタン
Select Case .Caption
Case "マクロ実行ボタン2"
マクロ2
.Caption = "マクロ実行ボタン3"
Case "マクロ実行ボタン3"
マクロ3
.Caption = "マクロ実行ボタン1"
Case Else
マクロ1
.Caption = "マクロ実行ボタン2"
End Select
End With
741デフォルトの名無しさん (ワッチョイ 6501-pXS1)
2020/08/01(土) 18:58:42.53ID:B3d0/RPj0 一つのボタンにいろんな機能を詰め込むのはどうかと思うの
742デフォルトの名無しさん (ドコグロ MM9a-LWbo)
2020/08/01(土) 19:43:27.83ID:0WCKoTHWM >>738
最近そう言うUI多いけど昔のように押せない時はグレーアウト(.Enabled)する方がわかりやすいと思うのは俺だけ?
最近そう言うUI多いけど昔のように押せない時はグレーアウト(.Enabled)する方がわかりやすいと思うのは俺だけ?
743デフォルトの名無しさん (アウアウエー Sa22-Vs42)
2020/08/01(土) 20:04:46.26ID:xQeMvl7Qa もう少し背景が分かるとね
インストーラの [次へ] みたいならこうだとか、有意義な回答が得られそうだけど
インストーラの [次へ] みたいならこうだとか、有意義な回答が得られそうだけど
744デフォルトの名無しさん (ワッチョイ 1602-xE3T)
2020/08/01(土) 20:14:10.47ID:Y2rZE5zP0 ボタン1が押される
表示をボタン2に変える
無効にする
ボタン1の処理する
処理終わる
有効にする
これならまぁ押された時の表示によって分岐もありかな
表示をボタン2に変える
無効にする
ボタン1の処理する
処理終わる
有効にする
これならまぁ押された時の表示によって分岐もありかな
745デフォルトの名無しさん (ワッチョイ 99da-xE3T)
2020/08/02(日) 00:24:11.20ID:fhoRH5wU0 >>743
その場合はシートの移動のほうがスッキリする
その場合はシートの移動のほうがスッキリする
746デフォルトの名無しさん (テテンテンテン MMee-DfbS)
2020/08/02(日) 04:27:47.15ID:yz3gxwYFM ラウンドワンとかゲームセンターに置いてある
「動体視力ゲーム」みたいなのじゃないの?
数字ボタンがランダムな位置に出現して
押したら次のボタンが別の位置に現れるヤツ
「動体視力ゲーム」みたいなのじゃないの?
数字ボタンがランダムな位置に出現して
押したら次のボタンが別の位置に現れるヤツ
747デフォルトの名無しさん (ワッチョイ 4e06-LqCg)
2020/08/02(日) 12:51:46.72ID:i29UoGb/0 >>673
エクセルのほうが簡単だと思います。
A列:1〜20000までの連番
B列:口数
C列:∔B1/B列合計 (以下コピー)
D列:1行目は0、2行目 +C1、3行目以降は=+D2+C2をコピー
E列:+A1(以下コピー)
F列:=RAND()(以下コピー)
G列:=VLOOKUP(+F1,D$1:E$20000,2)を300行目までコピー
300/20000なら大口がいないと重複しなさそう。
重複があったらシートコピーして当選行を削除。
エクセルのほうが簡単だと思います。
A列:1〜20000までの連番
B列:口数
C列:∔B1/B列合計 (以下コピー)
D列:1行目は0、2行目 +C1、3行目以降は=+D2+C2をコピー
E列:+A1(以下コピー)
F列:=RAND()(以下コピー)
G列:=VLOOKUP(+F1,D$1:E$20000,2)を300行目までコピー
300/20000なら大口がいないと重複しなさそう。
重複があったらシートコピーして当選行を削除。
748デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/08/02(日) 13:42:27.44ID:7JTul7vs0 俺らそういうのいやだから
重複しなさそうとか認めないし
重複しなさそうとか認めないし
749デフォルトの名無しさん (ワッチョイ 4e06-LqCg)
2020/08/02(日) 14:04:53.69ID:i29UoGb/0 ベースモデル考えて確率的に速い手段を選ぶだけ。
コード書くのが好きなら計算結果を配列に入れて、既定カウントに達するまで回せばいいけど、時間の無駄。
コード書くのが好きなら計算結果を配列に入れて、既定カウントに達するまで回せばいいけど、時間の無駄。
750デフォルトの名無しさん (ワッチョイ f102-Y3wz)
2020/08/02(日) 14:52:01.85ID:6ZNrYs7D0 条件にもよるけど今回の話の場合は1回目重複覚悟でやってから重複分だけ再度重複なしの方法でやるのが速そうだね
751デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/08/02(日) 15:17:38.22ID:7JTul7vs0 時間かかるってそんなの5分で終わるし
752デフォルトの名無しさん (ワッチョイ 4e06-hU8h)
2020/08/02(日) 18:40:53.06ID:i29UoGb/0 >>751
ワッチョイって何かわかる?
ワッチョイって何かわかる?
753デフォルトの名無しさん (ワッチョイ 7a01-he4x)
2020/08/02(日) 19:11:50.62ID:7JTul7vs0754デフォルトの名無しさん (ワッチョイ 5d01-UD9X)
2020/08/02(日) 22:26:59.52ID:RZU5Rxbr0 >>747
A列:連番
B列:口数
C列:当選確率 = 口数/口数の合計
D列:点数 = 当選確率*RAND()
これでソートかけたほうが簡単じゃね
300番付近のボーダーラインで点数の重複が生じたら
重複者のみを対象に再度抽選
まだ重複者がいたらさらに再度抽選(・・・)
再抽選回数が0〜300と未定だけども現実的には多くても数回で終わるだろうよ
A列:連番
B列:口数
C列:当選確率 = 口数/口数の合計
D列:点数 = 当選確率*RAND()
これでソートかけたほうが簡単じゃね
300番付近のボーダーラインで点数の重複が生じたら
重複者のみを対象に再度抽選
まだ重複者がいたらさらに再度抽選(・・・)
再抽選回数が0〜300と未定だけども現実的には多くても数回で終わるだろうよ
755デフォルトの名無しさん (ワッチョイ 4e06-LqCg)
2020/08/02(日) 22:40:10.04ID:i29UoGb/0 >>754
そちらの方がいいですね。
そちらの方がいいですね。
756デフォルトの名無しさん (ワッチョイ 79ce-Xvfy)
2020/08/03(月) 02:34:06.94ID:R5x2YJ6L0 それだと当選確率が公平にならない気がする
まあコーディングの手間と計算時間と公平さとどっちを取るかだな
まあコーディングの手間と計算時間と公平さとどっちを取るかだな
757デフォルトの名無しさん (ワッチョイ 99da-xE3T)
2020/08/03(月) 05:36:57.74ID:Z9mi6E360 一回の抽選ごとに当選者を省いていけばいとおもうが
758デフォルトの名無しさん (ワッチョイ 79ce-Xvfy)
2020/08/03(月) 06:39:58.48ID:R5x2YJ6L0 数学的に「当選者を除外しながら次を抽選」で公平になる
A列に応募者を一列に並べて、2口応募なら2回並べて、存在するデータの行数*RAND()+1で抽選すれば、自動的に口数に比例して当選確率が上がる
当選者はどこかに覚えておいて、A列から除外してから次を抽選
300人の抽選なんて1秒もかからないし、プログラムもきわめて単純、作業列も必要ない
A列に応募者を一列に並べて、2口応募なら2回並べて、存在するデータの行数*RAND()+1で抽選すれば、自動的に口数に比例して当選確率が上がる
当選者はどこかに覚えておいて、A列から除外してから次を抽選
300人の抽選なんて1秒もかからないし、プログラムもきわめて単純、作業列も必要ない
759デフォルトの名無しさん (ワッチョイ 017c-1vA1)
2020/08/03(月) 11:15:41.27ID:n1hXaiTs0 >>756
当選の公平さを取らないと企業として問題あるよ
当選の公平さを取らないと企業として問題あるよ
760デフォルトの名無しさん (テテンテンテン MMee-DfbS)
2020/08/03(月) 11:17:37.07ID:uwp3oPMnM 5ちゃんに書き込んでる時点でお察し
761デフォルトの名無しさん (ワッチョイ 017c-1vA1)
2020/08/03(月) 11:20:43.87ID:n1hXaiTs0 もう無理して数式でなんとかしようとするよりVBAでさっさと作った方がややこしくないし手っ取り早いんじゃないの
それなら処理時間なんか気にする必要も無し
それなら処理時間なんか気にする必要も無し
762デフォルトの名無しさん (アウアウエー Sa22-9tPT)
2020/08/03(月) 12:19:51.87ID:nPrsNj3oa や〜い、お察しお察し〜
763デフォルトの名無しさん (アウアウウー Sa09-4GEq)
2020/08/03(月) 12:31:15.20ID:rYhmIRt7a いぜん懸賞の雑誌で架空の人物に当選したとかやってたな
764デフォルトの名無しさん (ラクッペペ MMee-LxoB)
2020/08/03(月) 12:34:55.84ID:Dbk7eCCQM 発表は発送をもってかえさせろってのは
みんなインチキだよ
運ちゃんがボスジャン着ていたのは役得
みんなインチキだよ
運ちゃんがボスジャン着ていたのは役得
765デフォルトの名無しさん (アウアウカー Sa5d-skXP)
2020/08/03(月) 12:41:50.97ID:1eg4GQBHa 抽選システムなんて大概再使用されるだろうから手作業で当選者除去とかやらないといけないならVBAで組んじゃったほうがいいだろうな
766デフォルトの名無しさん (ワッチョイ fa2f-LqCg)
2020/08/03(月) 13:54:58.27ID:QvK0nIgr0 つかVBAの乱数とか公平といえるんかね
本当に公平な抽選は第三者立ち合いで見えるようにやるんだが
本当に公平な抽選は第三者立ち合いで見えるようにやるんだが
767デフォルトの名無しさん (ワッチョイ 017c-1vA1)
2020/08/03(月) 14:42:43.98ID:n1hXaiTs0 プログラムによる抽選が不正扱いなら全国の企業が謝罪案件になるが・・・
768デフォルトの名無しさん (ワッチョイ fa63-uaxO)
2020/08/03(月) 14:57:06.86ID:wycAObPT0 第三者立ち合いで乱数生成を!?
769デフォルトの名無しさん (アウアウウー Sa09-4GEq)
2020/08/03(月) 15:12:09.39ID:7WhWwh2+a パチンコ屋はあやしい
770デフォルトの名無しさん (ワッチョイ 1602-xE3T)
2020/08/03(月) 15:30:38.22ID:2tn2jJCj0 立会人を選定するための立会人が必要になるな
771デフォルトの名無しさん (ワッチョイ 99da-xE3T)
2020/08/03(月) 18:38:47.21ID:Z9mi6E360 立会人って居るだけじゃねーの
772デフォルトの名無しさん (ワッチョイ d68e-nhZs)
2020/08/03(月) 18:41:49.78ID:cM5/PGxb0 座って接待を受けるだけの誰にでも出来る仕事
773デフォルトの名無しさん (ワッチョイ d6b3-UD9X)
2020/08/03(月) 20:25:24.18ID:YOfHflqE0 Sheet2で使うユーザーフォームにSheet1から参照したデータをコンボボックスに表示させ
CMBBox1の入力内容に合わせCMBBox2を連動させたいのですが
CMBbox1はこんな感じでデータを拾っています。
CMBBox1.RowSource = "Sheet1! H3:H" & Worksheets("Sheet1").Range("H" & Rows.Count).End(xlUp).Row
CMBBox2にCMBBox1が入力されると、参照列(H列)の4つ右のセルを表示させるにはどうしたらよいでしょうか
(CNBBox1にSheet1のH3が入力されると、CMBBox2のリストにSheet1のL3が表示される)
似たようなコードを拾ってきたのですがこれを弄って使えるようにしたいです。
Private Sub CMBBox1_Change()
Set ws = Worksheets("Sheet1")
Col = CMBBox1.ListIndex + 12
品名CMB2Box.Clear
For i = 1 To ws.Cells(Rows.Count, Col).End(xlUp).Row
CMBBox2.AddItem ws.Cells(i, Col).Value
Next
End Sub
よろしくお願いします
CMBBox1の入力内容に合わせCMBBox2を連動させたいのですが
CMBbox1はこんな感じでデータを拾っています。
CMBBox1.RowSource = "Sheet1! H3:H" & Worksheets("Sheet1").Range("H" & Rows.Count).End(xlUp).Row
CMBBox2にCMBBox1が入力されると、参照列(H列)の4つ右のセルを表示させるにはどうしたらよいでしょうか
(CNBBox1にSheet1のH3が入力されると、CMBBox2のリストにSheet1のL3が表示される)
似たようなコードを拾ってきたのですがこれを弄って使えるようにしたいです。
Private Sub CMBBox1_Change()
Set ws = Worksheets("Sheet1")
Col = CMBBox1.ListIndex + 12
品名CMB2Box.Clear
For i = 1 To ws.Cells(Rows.Count, Col).End(xlUp).Row
CMBBox2.AddItem ws.Cells(i, Col).Value
Next
End Sub
よろしくお願いします
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【卓球】早田ひな、「総額100万スられた」「ずっと憧れていたスペインとイタリア…」ヨーロッパ旅行で悲劇 スリ被害を告白 [muffin★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 産経新聞「高市早苗の答弁さぁ……思慮が足りてなくね?官僚と詰めずに思いつきで話しているでしょ」 [175344491]
- 【実況】博衣こよりのえちえち歌枠🧪
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【雑談】暇人集会所part18
- 高市早苗「支持者の理解を得られないので台湾発言を撤回できない」 [931948549]
- 外務省局長、よくわからないまま帰国へ [834922174]
