Excel VBA 質問スレ Part84 (115レス)
上下前次1-新
81: 10/16(木)14:30 ID:oDClVh0R(1/2) AAS
 プルールのひとつめっけ 
 https://dl.ndl.go.jp/pid/1077355/1/31 
 日本全国諸会社役員録という本、アドレスはあくまでも31/914ページという意味 
 最初から見てっても中々面白い 東京府だし、並び順はいろは順だし ヰもヱもあるし 
 ビルデングもビルヂングも混在 日本フヰラメンドあり日本フアイアツト自動車あり 
 ブルドックソースが何だって? 
82: 10/16(木)15:17 ID:oDClVh0R(2/2) AAS
 https://dl.ndl.go.jp/pid/1136907/1/100 
83: 10/17(金)06:28 ID:Qpm+e9K0(1) AAS
 6分で終わる簡単な作業をいつもやってるからと思ってExcel VBAにしたら4時間もかかった 
 40回でペイする計算 
 1ヶ月に1回の頻度として3年4ヶ月でペイする計算 
 1ヶ月以上ブランクがあって作るのに時間がかかった 
 これを作るときに以前作った別のものをまた作ってしまったことに大体完成してから気づいた 
 使わないと作ったことを忘れる 
 役に立つものでこれからも使うか使わないか前もって予測できないから作るしかない 
 そのなかに使うものが出てくるし使わないものも出てくる 
 ちょこちょこ作るのは効果があると分かってるが本当に効果があるか愚痴を言いたくなった 
84: 10/17(金)08:01 ID:lzj//9Gm(1) AAS
 なんたるプログラミング能力が低さよ 
85: 10/17(金)09:21 ID:2jUaiXhz(1) AAS
 まあスキルも積み重ねが大事 
 あと人為的ミス防止やデータが多い時も速いことなども目的にしないとね 
 若いなら転職の小ネタにもできる 
86: 10/17(金)16:13 ID:IG/te/XB(1) AAS
 イレギュラーなデータとかエラー処理とか完璧にやろうとするとメインの処理は簡単でもめちゃくちゃ長いコードになったりする 
87(1): 10/17(金)18:48 ID:ZOdCVHpQ(1) AAS
 でも他人に使わせる前提だとそこがすごく大事なんだよな 
 自分用を手早く作れるのはそこ端折れるからってのがある 
88(1): 10/18(土)14:30 ID:ViyQQZbE(1/5) AAS
 質問です 
  
 ・テキストボックスを多用したユーザーフォーム群を作っていて、IMEMode変更を多用している 
 ・一部vbIMEModeKatakanahalf(以下半カナ)に設定してある 
 ・フォームを使い終わったとき、IMEModeOnが半カナに固定されてしまう(要するにA↔半カナ状態に) 
  
 そうなってしまうのは仕方ないけど、フォームを抜ける時にA↔全かなの状態に戻したい 
 ということでTerminate処理で全かなのBoxにSetfocusしてから抜けるようにしてみたところ、ステップインなら成功するけど通しで処理させると失敗してしまう… 
  
 なんかいい方法ありませんか? 
 全かなBoxのみを設置した仮フォームを呼び出してすぐ閉じるくらいしかないのかなぁ… 
89: 10/18(土)14:31 ID:ViyQQZbE(2/5) AAS
 それこそ>>87の言うように自分で使う分には「ちと面倒だけどまあ戻せばいいだけ」で済むけど、PCに疎い人達にも使わせるから「なんかひらがなが打てなくなったんだけど~」って言われるのは目に見えてるので… 
90(1): 10/18(土)14:46 ID:ViyQQZbE(3/5) AAS
 連レスすみません 
  
 「基本的には英数字だけど、半カナも打つことがある」Boxもあるので、「A↔半カナ状態のIMEModeOff」にするとかもできれば理想です 
91(1): 10/18(土)17:07 ID:+vuE6Mxs(1) AAS
 >>88 
 TerminateだとSetFocusしようにもすでにテキストボックスが存在しないんじゃないの? 
 × Terminate 
 ○ QueryClose 
92(1): 10/18(土)19:05 ID:0zFTkOmI(1) AAS
 >>90 
 自由に入力させて、入力後に判定処理入れるのがいい 
93: 10/18(土)19:06 ID:ViyQQZbE(4/5) AAS
 >>91 
 レスありがとうございます 
 QueryCloseでもダメでした… 
  
 なるはやで実用化したかったので、とりあえずは全かなBoxを置いたダミーフォームを一瞬出現する形でお茶を濁しました… 
 でも自分でもかなり使うモノだから気持ち悪さが拭えないので、可能ならどうにかもっとスマートに処理したい… 
94: 10/18(土)19:17 ID:ViyQQZbE(5/5) AAS
 >>92 
 ありがとうございます 
 そのまま打ってF8やF10ってのを覚えてくれれば楽なんですけどね… 
 PC疎い民もさすがに半角全角キーを押すことくらいは分かるので、基本的にはIMEModeOffだけど半角全角キーを押すと半カナになるってのがやりたいんです 
  
 我ながら駄文すぎて分かりにくかったけど、要約するとIMEModeOn時の行き先を自在に操りたいってことですね 
95: 10/19(日)10:59 ID:/YxBx4q/(1) AAS
 テキストボックスのイベントでExitにIMEを元に戻す記述を書く 
 https://www.javadrive.jp/excelvba/userform/index93.html 
 sheet上でも出来るとは まぁ、知らん奴が使ったらヒステリー起こしそうだが 
 https://infith.com/system/excel/ime_validation/ 
96(3): 10/28(火)09:16 ID:Kk67eWAx(1) AAS
 Worksheet_BeforeRightClickを素早いクリックに反応させる方法ってありますか? 
 例えば右クリックでカウントアップするような場合、ゆっくりクリックしないと取りこぼすので、それをできるだけ軽減したいという話です 
97: 10/28(火)11:49 ID:BUlcRJ6d(1) AAS
 >>96 
 ワークシートのイベントはどれも動作が遅い 
 透明なオートシェイプをセルの上に重ねて、オートシェイプのClickイベントを使えば16連射も可能になる 
 ただし右クリックでは動作しない 
98: 10/28(火)13:00 ID:NppxA0uZ(1) AAS
 >>96 
 素早いクリックがダブルクリックと判定されてるかもね 
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
 そもそも右クリック連打が必要な設計を見直したほうが早いんじゃね 
上下前次1-新書関写板覧索設栞歴
あと 15 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.024s