Excel VBA 質問スレ Part84 (160レス)
上下前次1-新
99: 10/28(火)16:30 ID:xLHeS3+n(1/2) AAS
そんなに連打が必要な業務なのかわからんけど
マウスも一枚岩じゃ無いから(個体によって性能違ったり、有線無線で変わるかも知らんし)
ユーザーフォームとかにオプションボタン並べて、○1 ○5 ○10 ○25 ○50 ・・とかを事前に選択してから
右クリさせるのはどうか 二度手間三度手間が嫌だとクレーム来るのとトレードオフに成るが
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True ' Prevents the default right-click menu
Application.ScreenUpdating = False ' Turn off screen updating
' Your optimized code here, e.g., displaying a custom menu or performing actions
' ...
Dim i As Integer
For i = 0 To 100
' ステータスバーの表示が更新されない場合は、コメントをはずす
'DoEvents
' ステータスバーに出力
Application.StatusBar = "処理回数:" & i
Next
' ステータスバーのクリア
'Application.StatusBar = False
Application.ScreenUpdating = True ' Turn screen updating back on
End Sub
その辺で拾った野良のコードの合体モンだけど、回数:100にするのも一瞬なんだし
100: 10/28(火)18:40 ID:k7xgJ8GR(1) AAS
そもそも右クリック連打が必要な設計を見直したほうが早いんじゃね
101(1): 10/28(火)19:08 ID:HpHj+cai(1) AAS
よく読め、連打が必要な訳じゃないと思うぞ
俺も似たような問題にぶち当たったことがあるから言いたいことは分かる
俺の場合はユーザーフォームだったからなんとでもやりようがあったけど、シートイベントでどうすべきかは思い付かんなぁ
ユーザーフォームなり透明オブジェクトなりで代用できそうか考えてみるのは大事かもな
102: 10/28(火)19:36 ID:xLHeS3+n(2/2) AAS
そうか、迂闊か
そういやチャタリング・チェックできるサイトとかあるから、そこでチェックもありか
103: 10/28(火)20:59 ID:WbU161W5(1) AAS
>>101
ダブルクリック判定にひっかかってるのかもしれんが、ユーザーフォームも単純な連打はうまく処理できない
104(1): 10/28(火)21:36 ID:uh3txXo7(1) AAS
要はこれっしょ
VBA フォームのボタンの反応が遅い理由と対策 - t-hom’s diary
外部リンク:thom.hateblo.jp
これと同じようなことをワークシート右クリでやりたいってことやろ?
ワークシートだと安易に左クリックにはできない事情もあったりするし、こういう感じでフォームとかで代用できないか検討してみたら?
105(1): 10/28(火)21:48 ID:xheP7Ub+(1/2) AAS
レス遅れてすみません!
まさに>>104さんの言う通りです!
より具体的に言うと5種類の値から選ばせたくて右クリックで順繰り変更するマクロを作ってたんですが、例えば4番目の値を選びたいときなんかに慣れてくるとどうしても「カチカチカチカチ」って押してしまって反応が悪いと言われたのでどうにかしたくて
反応が悪いで済めばまだいいけど、それで間違った値のまま提出されたりすると困るのだ
106: 10/28(火)21:49 ID:xheP7Ub+(2/2) AAS
困るのだ じゃなくて 困るので です!!
107: 10/28(火)21:57 ID:DelTjWwd(1) AAS
バカボンのパパ(´^ω^)
108: 10/28(火)22:41 ID:wDWtv1wu(1) AAS
>>105
マウスじゃなくキーボードでトグルしていくUIはいかが?
こんなの(INSキーでA1セルの値が増える)
Sub Init()
Application.OnKey "{INSERT}", "ThisWorkbook.OnKey_Ins"
End Sub
Sub OnKey_Ins()
Range("A1").Value = Range("A1").Value + 1
End Sub
109(1): 10/29(水)02:29 ID:SoMHk0As(1) AAS
馬鹿は馬鹿な頭で考えた馬鹿な方法に固執する例
110: 10/29(水)06:43 ID:0NTgZ+aL(1/2) AAS
これでいいのだ
111: 10/29(水)06:46 ID:0NTgZ+aL(2/2) AAS
>>109
この人カバの逆立ちなのだ
112: 96 10/29(水)07:39 ID:K2GlQHDP(1) AAS
代案ありがとうございます!
やはり何かしらの大体策を考えるしかないですかね
右ダブルがキャッチできれば解決するんだけどなぁ
113: 10/29(水)18:26 ID:GMHlOV3c(1) AAS
カバは逆立ちしてもカバなのだ
114: 10/30(木)03:56 ID:k5qTIKM4(1) AAS
【高市自民】自維連立に衝撃 維新トップに赤旗砲「重大疑惑」2千万円絡む疑惑と 共産党Xが「だから裏金自民党とも組めるのか」と攻撃 説明求める声
外部リンク:news.yahoo.co.jp
115: 11/01(土)03:09 ID:2yW7ZPbn(1) AAS
環境構築も配布の容易さも世の中の情報量も加味するとpythonなんて比較対象にならんな
特定のシステムでVBAに勝てるものはないわ
運用される規模は部署内程度になゆけどさ
116(1): 11/01(土)10:44 ID:kVMvyffB(1) AAS
マクロを起動するための各種コントロールは今後はフォームを使うべきなのか
これまで作ってきたActiveXコントロールは置き換えていくべきなのか
117: 11/01(土)10:47 ID:abESDRO+(1) AAS
PythonはてっきりVBE上で使えると思ってたからなぁ
ワークシート上の関数とかじゃ使いづらすぎて拍子抜けだわ
118: 警備員[Lv.0][新芽] 11/01(土)16:45 ID:IivztI/y(1) AAS
>>116
デフォルトでActiveX無効になったから、置き換えないと支障が出ることが多い
119: 11/01(土)17:42 ID:Hux2CBJ+(1) AAS
365に変えてから動かなくなった原因がそれだった
120: 11/01(土)18:59 ID:h6jsjnZZ(1/2) AAS
マクロが増えてきてどれがなんのマクロか分かんなくなってきた。間違ったマクロが実行されたEXCELが元に戻らないのも嫌だし、どうしたら良いですか?
121(1): 11/01(土)19:04 ID:xL3BSUWP(1) AAS
うまい具合に人のせいにしてください
122: 11/01(土)19:35 ID:b8gravi3(1) AAS
間違ったマクロを実行した時にEXCELを元に戻すマクロを作ればいい
123: 11/01(土)19:53 ID:+zpxt/zr(1) AAS
適切なマクロを実行するマクロを作る
124: 11/01(土)20:11 ID:6pe+t0kU(1) AAS
AIに丸投げして聞いたらいい
完璧に教えてくれるよ
125(1): 11/01(土)22:42 ID:h6jsjnZZ(2/2) AAS
>>121
採用!
126: 11/05(水)14:44 ID:rUtaLWLS(1) AAS
>>125
人のせいであっても現状の問題への対応はしなければならないのではないか
127: 11/16(日)08:35 ID:BUsW0orn(1/4) AAS
ピボットテーブルのスライサーが変更されたとき、
ピボットテーブルを置いているsheetについて
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
を使っていくつかのマクロを実行させるようにしているんだけど、
これが3つあって、関連するクエリーやらをちょっとメンテ作業すると、これも動いてしまうものだから、
いちいちコメントアウト?(頭に ' 付けるヤツ)にして、このマクロを止めている。
これもっと上手いやり方ないかしら?
128(1): 11/16(日)08:47 ID:Mx/pwiFm(1) AAS
デバッグ用定数を定義しておいて、
そのデバッグ用定数の値が特定の値なら動かさない、とかにすれば、
メンテ中の変更が一カ所で済む、とかそういう話?
上下前次1-新書関写板覧索設栞歴
あと 32 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.016s