Excel VBA 質問スレ Part77
at TECH
[前50を表示]
900:906
22/10/19 22:12:45.50 wavRu5Wg0.net
ここに書いてありました
URLリンク(detail-infomation.com)
901:デフォルトの名無しさん (ササクッテロラ Sp0f-HPGf)
22/10/20 01:06:22.80 Rvw6iN3vp.net
>>886
>>889
ありがとうございます。
902:デフォルトの名無しさん
22/10/20 06:04:53.46 I98JYgIT0.net
外出先でもスマホからマクロ実行したいからGASでプログラムやろうかと思ってる
903:デフォルトの名無しさん (ワッチョイ 9f42-M5DG)
22/10/20 07:03:58.77 D7MvRF2u0.net
勝手にやればええやん
904:デフォルトの名無しさん
22/10/20 09:47:53.53 gU8aHBR/M.net
GASいいよね
Googleスプレッドシートは単一のブックを皆で共有してつつき回すのが前提だから、
Excel VBAでよくあるようにデータとマクロ用ブックを分けて部署別の複数のデータファイルをVBAでまとめて集計するみたいなことをする必要性が低くて、
そもそもGASを書かなくて済むケースが多かったりする
外部APIとのデータ連携が必要なときくらいだな
905:デフォルトの名無しさん
22/10/20 10:11:29.65 od/5Btdhd.net
ここで広げる話じゃねぇ
906:デフォルトの名無しさん
22/10/20 11:53:08.75 jbEEQ7MN0.net
GASってスマホからも動かせるの?
907:デフォルトの名無しさん
22/10/20 12:40:27.98 gU8aHBR/M.net
もちろん
908:デフォルトの名無しさん
22/10/20 17:44:35.99 zIYHKHDh0.net
>>904
それってWeb版EXCELと何が違うの?
909:デフォルトの名無しさん
22/10/20 17:58:16.85 wfln4dMhM.net
もちろん違わないよ
全く同じことがWeb版Excelにも言える
まあExcelにしちゃうとせっかく共有してても結局ローカルコピーを作るバカが必ず出てきて邪魔になりがちだから、間違った使い方をするのが難しいという点では好ましいかもね
910:デフォルトの名無しさん
22/10/20 18:01:51.16 rx8Gs0n5M.net
それはWEB版を使いにくいと思ってる人が居るってことでは?
911:デフォルトの名無しさん
22/10/20 23:20:50.15 I98JYgIT0.net
試しにAndroidスマホからボタン(図形)をクリックしたけどgasを実行できなかったよ
なんか色々と制約があるみたいだし、JAVAやC#でスマホアプリ作ったほうがいいな
912:デフォルトの名無しさん
22/10/21 00:43:10.35 HmQfBwoT0.net
どんどんスレの趣旨からはなれtrくなー
そもそもスマホアプリ作るならAndroidでC#使うならXamarin使うことが前提になるしiPhoneならSwiftかObjectiveCだろ
WindowsPhoneならxamlとC#かVB.Netで作ること出来たけど死滅しちゃったからなー
Javaは実行時に中間コード翻訳が挟まるから重いし
やっぱりスマホはiPhoneをSwiftで開発するのが最強だろうな
AppleのMacで開発することが前提になるからちょいお金が必要になるけど。
ExcelのVBAやってる人はMac買うんなら別途Windows も必要だな
MacのEXCELはVBAまともに動くことを期待しない方がいいから。
913:デフォルトの名無しさん
22/10/21 01:50:58.42 6vVdUlmSd.net
>>912
突っ込み所が多過ぎ
914:デフォルトの名無しさん
22/10/21 08:00:32.41 K0Nv/hCp0.net
>>912
突っ込み所がほんと多過ぎ
915:デフォルトの名無しさん
22/10/21 17:19:06.50 qYJSQXItd.net
質問ですが、
シートに動的に追加したボタンに対して、共通のクリックイベントを追加したいのですがやり方がわかりません。
教えてほしいです。
activesheet.buttons.addで追加したボタンに対して、
クラスモジュールで作成したクリックイベントを結びつけたいです。
916:デフォルトの名無しさん
22/10/21 17:20:50.78 qYJSQXItd.net
動的にボタン作成しながらそのボタンに対して共通のクリックイベントを結びつける方法です
917:デフォルトの名無しさん (ワッチョイ 9fd8-NYmr)
22/10/21 18:49:07.97 7JSr5kXR0.net
>>916
.OnAction プロパティにプロシージャ名を設定
918:デフォルトの名無しさん (ワッチョイ 7b2f-KWxC)
22/10/21 19:01:18.29 DZ21JFev0.net
基本的にはボタンのOnActionにマクロ(Subのメソッド)名を設定すればいいんだが
クラスモジュールのメソッドとか直接指定できないんじゃないかな
間に標準モジュールかますとかすれば行けると思うが
919:デフォルトの名無しさん (スッップ Sdbf-h7FX)
22/10/21 19:01:59.59 2/IIqD8Nd.net
マクロの記録でもやればおおよそやりたい事のひな型のコードはできると思うんだよね
そういうやり方で解決できない人ってなんだろと思う
ActiveSheet.Buttons.Add(168, 108, 186.75, 66.75).Select
Selection.OnAction = "Macro1"
マクロで作ったこれを参考にすればいいんじゃないのと思うが
Addで作ったものをObject型の変数で受け取ってその変数のOnActionに代入するだけでしょ
それにググればこの程度はいくらでもでてくるんだけどね
920:デフォルトの名無しさん
22/10/21 23:26:00.91 HmQfBwoT0.net
>>918
確かに。
何でクラスモジュールのメソッドに紐付けようとするか謎だよな。
そもそもそれにはインスタンスが生成されていなければならない訳だし
VBAのクラスはそこまで万能では無いからシングルトンパターンでよく使われるみたいに自分で自分を生成することも出来ない。
そうすると前もって生成したインスタンスのメソッドに紐付けるしかない訳だけどそんなことVBAのクラスで本当に出来るのか?と思ってしまうわな。
921:デフォルトの名無しさん
22/10/22 09:44:18.85 +w0aEr6Jd.net
クラスのモジュールではなくてもいいんですけど、何かしらの共通メソッドを呼び出せるようにしたいです。
動的に作った編集ボタンが100個くらいあって、編集するフォームを呼びだす共通メソッドに紐付けたいです。
922:デフォルトの名無しさん
22/10/22 10:00:21.77 tvj8JbCcF.net
初心者向けサイトに出てくるWithEventのやつじゃないの
クリックならいけるけどEnterとか一部はだめだから使わなかった
923:デフォルトの名無しさん
22/10/22 10:24:34.97 ivMt1YnGp.net
>>921
それは同じ関数呼んで引数で関数内で何とかするんじゃダメなの?
924:デフォルトの名無しさん
22/10/22 10:41:03.80 ANF77yYL0.net
この辺?
URLリンク(thom.hateblo.jp)
Newしたcommandbuttonにaddeventhundlerみたいなことって出来ないのかな
925:デフォルトの名無しさん
22/10/22 10:49:28.11 tqPxko+s0.net
だから何人も.OnActionだって言ってるのにアホなん?
926:デフォルトの名無しさん
22/10/22 11:20:03.36 c1Knyq/s0.net
目的や使用場面が不明だけど、それは1Sheet上にボタン100ヶ必要なものなのか?
そのボタンは、どう配列・配置されるものなのか マス目に10×10とかなのか、タテとかヨコにぞろぞろ100ヶなのか
何らかのデータの塊の傍にボタンを動的に配置し、それを押すことでひな型の編集フォームを呼び出すというのか
>>924 とか上に書かれてきたサンプルを参考にして苦心して作れたとしても、結果として「それ違くね?」には成らないのか
設計の妥当性が問われる
「動的に編集ボタンをつくる」ための何らかのイベントが在るわけだし、だったらそれに結びつけた方が無駄が少ない とも
927:デフォルトの名無しさん
22/10/22 15:30:44.10 UYHwlHOK0.net
>>926
確かにねー
でもリストの行の横っちょにボタン付いてて
そのボタン押すとその行のデータ読んできて処理するとか
ExcelのVBAじゃなくてもよくあることだし
そう考えると100どころか1000くらいくっついてても
それがユーザーにとって使いにくいとは言い切れない
ケースもあるから何とも言えないね
928:デフォルトの名無しさん
22/10/22 16:00:19.50 Md3R6uzp0.net
ポタン100個つけるならフォームは考えないでワークシートでselectionchangeでいいと思う
929:デフォルトの名無しさん
22/10/22 16:21:19.65 ANF77yYL0.net
onclickでセルによって判別でもいいかもね
930:デフォルトの名無しさん (ブーイモ MMe6-QNr5)
22/10/22 17:25:01.86 R6+v0VTJM.net
>>929
あ、そっちのほうがいいね
931:デフォルトの名無しさん
22/10/22 18:08:51.98 8rFwb/oz0.net
ボタンって最大何個ぐらい貼り付けできるんだろ?
メモリがあれば10万個とか貼れんのかな
932:デフォルトの名無しさん
22/10/22 18:14:52.06 CPpJyo/d0.net
>>928
>>929
確かにボタンにこだわる必要はないですね
セルクリック時にフォーム呼び出したらいいですね
933:デフォルトの名無しさん
22/10/22 22:30:23.86 GMPaa0s5d.net
と言う事で無事解決しましたね
934:デフォルトの名無しさん
22/10/23 11:33:27.17 le1S+yxh0.net
Excelのイベントに onclick とか無いけどな
OnDoubleClick ならあるけど 余計な位置でクリック・ダブルクリックした時に
そのたんびに編集フォーム出るのを対策必要かな
違うイベントに関連付けた方がいいのかな
935:デフォルトの名無しさん
22/10/23 16:22:22.37 BP6ngYdb0.net
まあワイだったら単純にするために、
セル(か行)を選ばせて、
ボタンではその値を参照してフォームに渡させるって感じで作るけどな
シートにオブジェクト何個も置くのはワイ的に無し
936:デフォルトの名無しさん (ワッチョイ 05da-ze3V)
22/10/23 18:53:55.43 WPTFsqfB0.net
初心者は100ぐらい根性で書けばいいのだ
937:デフォルトの名無しさん
22/10/23 20:53:35.93 +izIRcqGM.net
>>936
そのあと「これは効率が悪い」と気付いて修正するならいいけど、それしか考えられず500,1000と増やし続けているおじさんがウチの会社にいます。
938:デフォルトの名無しさん
22/10/23 23:34:27.69 3vnbJWYw0.net
>>935
セルを選択させてボタンを押してその行の値をユーザーフォームに引き渡すの?
939:デフォルトの名無しさん
22/10/24 03:27:38.59 lrg5VPVy0.net
(;・∀・)1000個やった。。プログラマはすげぇやって思ったけど効率いいやり方あるんか。
940:デフォルトの名無しさん
22/10/24 06:08:08.92 6AUN+j8g0.net
似たような処理ならforでもdoでもいいから1000回ループさせればいいわいな
941:デフォルトの名無しさん
22/10/24 11:49:03.56 iXy6XZlxa.net
動いているなら問題ないと思うよ
942:デフォルトの名無しさん
22/10/24 20:02:23.15 lrg5VPVy0.net
時間できたら改修してみるわ
943:デフォルトの名無しさん
22/10/25 13:18:15.56 dMEmx1y0a.net
問題なく動いているのを変に直してバグ入れる人よくいる
944:デフォルトの名無しさん
22/10/25 14:05:40.72 Awxzqqqu0.net
ん?
俺の悪口やめろよ
945:デフォルトの名無しさん
22/10/25 15:35:28.46 zuyTceYk0.net
wordVBAについて質問したいのですがここでも良いですか?
win10
2019版ですが、ページ番号5のページ全体を選択状態にしたいのですが、ググって見つかったrectangles(1)の手法は2019ではうまくいきません。
解説サイトがExcel VBAに比べてとても少ないので困っています。
ご存知のかたいませんでしょうか?
946:デフォルトの名無しさん
22/10/25 15:37:35.82 rYg1mhKw0.net
>>945
死ねよ
947:デフォルトの名無しさん
22/10/25 15:39:53.50 PC01Ck0J0.net
いや、あんたじゃないよ、おれの悪口だよ
948:955
22/10/25 15:48:40.06 zuyTceYk0.net
URLリンク(www.wordvbalab.com)
ここで解決しました。
ルール違反だったようですみませんでした。
949:デフォルトの名無しさん
22/10/25 17:07:14.74 KrF65cxW0.net
>>948
956が頭おかしいだけだから気にすんな
950:デフォルトの名無しさん
22/10/26 01:53:51.72 cEMR/QGK0.net
今は死ねとか言っちゃいけないんだぞ!
951:デフォルトの名無しさん
22/10/26 11:34:25.48 gGo/2Fws0.net
VBAのスレはこの今に存在するし、Excelって書いてあるのに無視して質問してる
更にはあまりにくだらないないようであるし
この手の連中はつけ上がるからな
952:デフォルトの名無しさん (ワッチョイ 8201-yYWu)
22/10/26 14:36:09.42 xzd5i3vP0.net
なら誘導してやればいいだけだろ
VBAなんでも質問スレ Part3
スレリンク(tech板)
953:デフォルトの名無しさん
22/10/26 19:48:54.22 EO+J62QK0.net
バカは死ななきゃ治らないそうですよ
954:デフォルトの名無しさん
22/10/26 21:41:45.13 Zi5ur2ypM.net
>>953
それは残念でしたね
955:デフォルトの名無しさん
22/10/26 22:17:58.40 izoyFRHN0.net
>>953
あっ・・・
956:デフォルトの名無しさん
22/10/28 13:09:52.87 KYP1+/DId.net
Excel初心者です。
カレンダーから日付入力のアドインをチェックボックスを使って表示・非表示したいのですが可能ですか?
また、スクロールしても画面内の同じ位置に表示し続けることは可能ですか?
できればコードを教えてほしいです(*_ _)
957:デフォルトの名無しさん
22/10/28 16:04:55.62 OMbpfHro0.net
おまいら親切すぎるんだわ
どんだけお人好しなんだ?
958:デフォルトの名無しさん
22/10/28 16:17:16.47 n9kqTWYK0.net
>>957
って思うじゃん?
ここで回答すると、違っていた時やもっといい方法があるときに上乗せして回答される
すっげーいい勉強になるんだぜ
959:デフォルトの名無しさん
22/10/28 18:37:43.76 OMbpfHro0.net
単にマウント取られてるんじゃなくて?
960:デフォルトの名無しさん
22/10/28 19:20:57.49 YuCy5lGNM.net
マウント取られるならむしろ勉強になるだろ
961:デフォルトの名無しさん
22/10/28 19:39:15.46 sCscEEFEd.net
優劣つけたがる奴多いけど
技術的な解決方法の話(こういう方法もあるぞ)だったらマウントいうのはおかしくないか?
962:デフォルトの名無しさん
22/10/28 19:49:26.94 xzhsh84s0.net
質問に対しての回答例ならマウントという表現はおかしいと思うが
その後の雑談は確かにマウントの取り合いに見える
963:デフォルトの名無しさん
22/10/28 20:29:32.46 TnsRe9wR0.net
僕が一番VBAをうまく使えるんだって言いたくなるのはわからなくはない
964:デフォルトの名無しさん
22/10/28 20:42:13.46 xzhsh84s0.net
二位じゃ駄目なんですか
965:デフォルトの名無しさん
22/10/28 21:17:01.84 n9kqTWYK0.net
>>959
頼むからマウント取ってください!
とにかく俺の上のスキルを見せて欲しい。なんでもしますから!
>>961
実際、確実に上って人はいくらでもいるよ
966:デフォルトの名無しさん
22/10/28 21:23:26.29 ZY9+XqOP0.net
お前がぐちゃぐちゃ入ってないで解答教えてやれや
971がやきもきしてるぞ
967:デフォルトの名無しさん
22/10/29 00:12:28.15 LP1UZCi+0.net
>>956
カレンダーアドインは使ったことないんでわからん
カレンダー程度なら自作できるので融通の利かないアドインは好かんのです
968:デフォルトの名無しさん
22/10/29 02:12:02.06 Q43C9b/9M.net
汎用性のある日付入力カレンダーの自作は結構大変だろ
休日祝日の更新処理が面倒で自作はあきらめた
969:デフォルトの名無しさん
22/10/29 07:19:37.14 EvNBvM9mM.net
>>968
最近使ってるが祝日はこれ使うと楽だぞ
URLリンク(excelapi.org)
970:デフォルトの名無しさん
22/10/29 07:56:20.37 y8vo38aP0.net
>>968
> 休日祝日の更新処理が面倒で自作はあきらめた
それ汎用性のある日付入力カレンダーでやることじゃないだろ...
971:デフォルトの名無しさん
22/10/29 09:53:33.94 WkAX7jzB0.net
日数算出するの面倒いよな
うちの会社は祝日が全部休みじゃないし
972:デフォルトの名無しさん
22/10/29 10:12:47.32 S8npcbCXM.net
結局、日付入力はカレンダー形式やめてテキストボックスとスピンボタンで適当に誤魔化した
973:デフォルトの名無しさん
22/10/29 11:10:55.70 zPpzpsf30.net
>>956
アドインでは無くてユーザーフォーム作ってそこにボタン配置してシート上のセル操作ならやったことある
[BttnF] という名のユーザーフォームを呼び出すのに、A1セルにボタン [cmdBttnF] を配置(ウィンドウ枠の固定でA1はずっと表示してるから)
Private Sub cmdBttnF_click()
With BttnF
.StartUpPosition = 0
.Top = 100
.Left = 800
.Show vbModeless
End With
End Sub
これだけで、画面スクロールしてもシート上の同じ位置に居続けるし、もちろんフォーム掴んで動かし回してもいい ×で閉じることもできる
うっかり閉じても、又A1セルにあるボタン押せば表示できるし
974:デフォルトの名無しさん
22/10/29 11:19:55.02 LP1UZCi+0.net
>>956
少しだけ補足すると、質問の文章がきちんと書かれていないので回答しにくい部分があって
EXCELのバージョンとカレンダーアドインについての情報がないので私の環境での説明では質問者のものと異なるかもしれない
アドインの表示/非表示はVisibleとかの表示関係のプロパティーは調べないのか
スクロール範囲は「ウインドウ枠の固定」かユーザーフォームとかが考えられるんじゃね
975:デフォルトの名無しさん
22/10/29 14:34:50.58 zPpzpsf30.net
>>956 「カレンダーから日付入力」のアドインは個人用アドインに取り込まれて
毎回それをダイアログから追加するか貼り付けたまま使い続けるかの使用方法しかない様子
マクロの記録で一連の操作をしても望む動きしないし、ユーザーフォームに貼り付けるとか
コピペとかいろいろ試したけど、どれもできず断念
作者に交渉して「こういう使用方法したい」と改善依頼するしかないような 誰か他の案プリーズ
976:デフォルトの名無しさん
22/10/29 17:02:02.57 pObfyH4Kr.net
初心者あるあるの後だし条件
977:デフォルトの名無しさん
22/10/29 18:34:46.28 XVu26ZuG0.net
質問です。
VBAの処理の途中経過をログのようにコマンドプロンプトに表示させたいのですが、
どうすればよろしいでしょうか?
高速だと尚嬉しいです。
978:デフォルトの名無しさん
22/10/29 19:12:37.96 LP1UZCi+0.net
>>977
表示だけならユーザーフォームにテキストボックス貼り付けるだけでいいんじゃね
979:デフォルトの名無しさん (ワッチョイ 69cd-Tk+f)
22/10/29 22:00:56.05 Ty5cM9IY0.net
>>977
debug.printでイミディエイトウィンドウじゃだめなの?
フロートさせることもできるからわざわざコマンドプロンプトに投げなくてもいいと思う
URLリンク(i.imgur.com)
980:デフォルトの名無しさん
22/10/29 22:52:21.52 XVu26ZuG0.net
ありがとうございます。
フォームか、イミディエイトウィンドウを独立に出すのですね。
VBAを別のシステムから呼び出すのですが、エクセルをアクティブにしていなくても前面に出てきますでしょうか?
981:デフォルトの名無しさん
22/10/29 23:18:52.58 PRTnNeqn0.net
別の、、システム?
982:デフォルトの名無しさん
22/10/29 23:36:52.05 pTxh4CzU0.net
Pythonとかじゃね
983:デフォルトの名無しさん
22/10/29 23:38:18.77 epZm7Ut5M.net
Excelを他のシステムから呼び出すならVBAではなくてOfficeアドイン(COMアドイン)
984:デフォルトの名無しさん
22/10/29 23:45:53.72 VMSbDQpEd.net
そこまでの事するわりにここで質問するとかw
985:デフォルトの名無しさん
22/10/30 01:27:01.53 PMPwr2WR0.net
すみませんいろいろとあるのですが、とりあえずイミディエイトウィンドウで試してみます
986:デフォルトの名無しさん
22/10/30 03:01:55.11 fzG7wj8e0.net
よく分からんけど、VBSなら呼び出しも黒窓も両方できるぞ。
987:デフォルトの名無しさん
22/10/30 08:52:03.88 OaWd/xmf0.net
>>986
コマンドラインプロンプトからvbs経由でエクセルのマクロ叩くのはいいけど、そのマクロからDebug.Print的なのを画面に書き出すのはどうやるの?マクロからテキストファイル開いてログを書き出す方法ならわかるけど
988:デフォルトの名無しさん
22/10/30 10:19:47.96 5A/AyQcT0.net
ドラマや映画の中でよくある、でっかいマルチモニター複数枚に
犯人画像や防犯カメラ映像、それに並べてプロファイリングや位置情報やらの隅っこで
黒窓の中に意味不明な文字列がズラズラ流れてるような そんなのを作りたいんだと思う おれはつくりたい
989:デフォルトの名無しさん (ワッチョイ 1901-Uvty)
22/10/30 10:52:42.98 PMPwr2WR0.net
>>988
イメージとしてはそうです。
ありがとうございます。
黒窓だとログっぽさが出て使う人がわかりやすいかなぁと思っていた次第です。
Microsoft同士なのに単純には出来ないんですね
990:デフォルトの名無しさん
22/10/30 11:37:34.89 LcJSLwmnd.net
ログっぽさとかw
VBAだけでやろうとせずにPowershellでも使ってファイルに出力したログをずっと表示するような仕組みでいいんじゃないの
画面に流しても見逃したらログのいみなくね?
991:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 105日 4時間 30分 0秒
992:デフォルトの名無しさん
23/07/25 15:40:42.48 9LIYNDaoI
要するに少子化対策ってのは本来て゛あれば孑なんか産んた゛ら遺棄罪で逮捕懲役にされるへ゛き貧乏人に孑を産ませようという遺棄の幇助だろ
男は6○代て゛も妊孕能あるが女はЗ○才で妊娠困難.ひと昔前なら女学校時代に孑を産んた゛り.許嫁がいたり,行き遅れとか言われたりと
女性の特性に合致した社会風土によって多くの子が作られていたわけた゛が.そんな大事な時期を資本家階級の家畜にする目的て゛,洗腦して
奇妙な社会的圧迫を加えて子を産めなくしてるのか゛最大原因た゛ろうに更に子供手当だのと憲法の下の平等すら無視した社會的歪みを加えて
余裕か゛あるから孑を作るという真っ当な家庭の孑が10萬のiPhone(笑)とか持ってて,私は買ってもらえないから始まって.公明党齋藤鉄夫
国土破壊省によるクソ航空騷音に勉強妨害されて精神的圧迫されて.路上で幸せそうな親孑に斬りつけた不幸JСみたいのを増やそうとか
奨学金ガ━なんてミ二バン飲酒運転して事故って死んでる某大生とか典型た゛か゛そいつらに遊ふ゛金くれてやることに何の意味か゛あるってんだか
やることなすことすへ゛てがてめえの私利私欲のために賄賂癒着してる資本家階級の利益を追求してるた゛けなのがハ゛レバレでキモチワルヰな
創価学會員は,何百万人も殺傷して損害を与えて私腹を肥やし続けて逮捕者まで出てる世界最悪の殺人腐敗組織公明党を
池田センセ━か゛ロをきけて容認するとか本気で思ってるとしたら侮辱にもほと゛か゛あるそ゛!
hТΤрs://i,imgur,сοm/hnli1ga.jpeg
最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
86日前に更新/265 KB
担当:undef