1 名前:デフォルトの名無しさん mailto:sage [2022/02/09(水) 14:24:32.62 ID:I0u44nFvd.net] !extend:checked:vvvvv:1000:512 !extend:checked:vvvvv:1000:512 ↑2行に減ってるけど、同じ内容を3行に増やして貼り付けるナリ ExcelのVBAに関する質問スレナリ コード書き込みや作成依頼もOKナリ ※前スレ Excel VBA 質問スレ Part74 https://mevius.5ch.net/test/read.cgi/tech/1639932059/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
655 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 07:06:07.15 ID:YJRadFF90.net] >>643 https://thom.hateblo.jp/entry/2016/09/27/221527
656 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 07:24:06.81 ID:Nk63wsBAa.net] それをNothingにできないと言うか?
657 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 07:25:09.72 ID:z3WwGups0.net] >>644 量子論で草 nothingできるけど元に戻る、vbaの狂気を垣間見た気がする
658 名前:デフォルトの名無しさん [2022/03/29(火) 08:16:28.05 ID:JuGZiW1lM.net] dictionaryって連想配列だろ VBA的にはマスタの代わりか、重複を避けて集計するぐらいしか使わないイメージ だからここで問題にされてることってどうでもいい気もするけどなw >>602 お前の質問に答えられるレベルに人はここにはいないだろw 海外のサイトで質問するほうがいいよ
659 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 08:48:32.13 ID:ZoTD6ZCz0.net] そもそもVBAのオブジェクト型は参照カウンタ方式だから、Nothingの代入はオブジェクトの破棄じゃないし 破棄の予約とでも言えばいいのかな システムは予約が入ってるかどうか定期的にチェックして、可能なら破棄する 実際に破棄するタイミングはシステムが勝手に決めて、いつのまにか予測不可能なタイミングで破棄されてる ところで破棄のアルゴリズムって公開されてる? あるいは誰かが解析した資料がどっかにある?
660 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 08:57:03.34 ID:91VKkhT6M.net] カウントゼロで破棄だろ 説明するまでもない
661 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 08:58:53.63 ID:TzrFOdrRd.net] >>648 トレーシングGCと参照カウントがごっちゃになってるのかな 参照カウントは基本的に参照が外れたら即破棄
662 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 10:42:09.75 ID:YJRadFF90.net] この辺、VB.Netとかの他言語でCOMオブジェクトの解放とかやってないと想像つきにくいよね。 そういうの知ってても面倒くさいし、サーバーサイドでEXCEL自体ないこともあるから あの手この手で別の方法使ってEXCELの更新行おうとするよね。
663 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 11:13:32.55 ID:DZfi33jJd.net] 想像というよりやるべき作法をわからずに適当に作るからでは 使ったら解放するものは何か理解していれば間違えないでしょ 適当にここでNothingすればいいやとか思ってるから問題がおきてしまう
664 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 11:35:23.69 ID:4eDRgxgoM.net] >>602 Salesforce CLIを呼び出してCSV等に出力し、それを読み込めばいい VBAから直接APIを呼ぶのは自前でパースしなきゃいけなくて面倒だぞ
665 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 12:59:23.02 ID:YOHlvasK0.net] >>643 Set a = Nothing のあとに MsgBox (a Is Nothing) とかやってみ 問題にしてるのはオブジェクト変数をNothingにできないことで つまり Set obj = Checkobj() If obj Is Nothing Then みたいなコードがバグるってことなんだが >>648 インスタンスの解放とか問題にしてないが 破棄の予約ってなんなんだよ Nothingの代入は単に参照カウンタを減らすだけだぞ 結果カウントゼロなら廃棄される .Netじゃないし、VBAで >システムが勝手に決めて、いつのまにか予測不可能なタイミングで破棄されてる なんてことはないはず
666 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 13:35:16.03 ID:oJxqSb9ha.net] >>654 > Set a = Nothing > のあとに > MsgBox (a Is Nothing) > とかやってみ >>644 のリンク先にも書いてあるけどMsgBox にブレークポイントかけてウオッチウインドで見てみ Nothing にできないことと、Nothing の時に参照されたら New されると言うのは違う
667 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 13:45:44.59 ID:YOHlvasK0.net] >>655 ああ、そうだな オブジェクト変数をNothingにできない は (VBAコードから)オブジェクト変数をNothingとして評価できない に訂正しとくわ
668 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 13:49:11.35 ID:DZfi33jJd.net] >>654 バグるんではなく自分でバグらせてるだけでしょ Dimで変数を宣言する際にNewを付与するとヘルプのこちらの記載 「オブジェクト変数の宣言時に New を使用すると、その変数を最初に参照したときにオブジェクトの 新しいインスタンスが作成されるようになり、Set ステートメントを使用してオブジェクト参照を 割り当てる必要がなくなります。」 にある通り変数を参照する限りはNothingにすることはできない (デバッグで変数を参照してしまっても同様) 変数がNothingか判定したいなら素直に宣言の際はNewを使わなければいいだけ Newをどういうときに使うとコーディング上効果的かわからない、他人が理解
669 名前:ナきないかもしれないなら使わないほうがいい [] [ここ壊れてます]
670 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 13:53:26.54 ID:/B8eDHF6d.net] >>656 評価って表現もなんかおかしくない? Nothingになっていることを確認できない、とか
671 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 14:15:22.73 ID:YJRadFF90.net] でもこれ、ちょっと怖いよね Dimの宣言時にNewしてやると、Nothingにしたら次触るとき、インスタンスが設定されていなければ 勝手に新しいインスタンスを設定するなんて 知らなかったら分岐に Is Nothingとか使いそうだし、知ってたら知ってたでSet 〜 As New 〜の代わりに使って、知ってる人じゃなければ分からないような属人化コードわざと書いたり出来るってことだもんね。 .Netとかでも同じような挙動をするのかな?
672 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 14:49:39.05 ID:DZfi33jJd.net] 怖いもなにもヘルプに書いてあることを理解せずに伝えたりそれを聞きかじっただけでやるからでしょ 質問する側も答える側も一部分だけのやり取りしてるのを踏まえて会話しないと事故のもとだよ まあ事故るのは質問する側だけなんで答える側はそこまで保証できないが
673 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 15:00:51.71 ID:5Hfxlu6fa.net] >>657 > 「オブジェクト変数の宣言時に New を使用すると、その変数を最初に参照したときにオブジェクトの新しいインスタンスが作成されるようになり、Set ステートメントを使用してオブジェクト参照を割り当てる必要がなくなります。」 から > 変数を参照する限りはNothingにすることはできない と言うのは飛躍しすぎ 問題はそっちじゃなくて > 「必ずオブジェクトが存在することが保証される (Nothing を設定してオブジェクトが破棄されたとしても、オブジェクト変数を再利用しようとすると、再作成される)」 の方な ただ個人的には上記の文で「オブジェクトが破棄されたとして」のくだりは余計だと思う 複数から参照されてたらオブジェクト自体は破棄されないから
674 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 15:09:04.14 ID:DZfi33jJd.net] Nothingしてもその後に”変数を参照した”らNothingが再作成されたインスタンスに変わるんだからできないと一緒じゃない? それと変数とオブジェクトを一緒に考えてないか? 自分は Dim A As Object Dim B As Object Set A = XXX Set B = A Set A = Nothing この場合のAの話をしていてXXXで作成したインスタンスの話はしてないよ
675 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 15:12:01.06 ID:DZfi33jJd.net] まあどうでもいい話だった無視してくれ すまん
676 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 15:23:41.67 ID:YOHlvasK0.net] >>657 元の話はなぜDimでNewしないって話だから バグのもとだからやめといたほうが良いという、理由の可能性の一つを挙げてるだけだが 実際知っててもミスることはあるし、しらないとデバッグが困難だからな
677 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 15:30:09.53 ID:9zoeUatEa.net] >>662 混同してるのはお前さんの方 Aは変数でオブジェクトじゃないぞ
678 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 15:31:19.17 ID:YOHlvasK0.net] >>662 まあ、Nothingにできないは厳密には確かに違う。Nothing代入できるし Nothingにならないって言うほうが正しいな このコンテキストでその違いが重要か?とは思うが
679 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 15:54:16.92 ID:ffasCIjOa.net] >>666 違いは重要じゃないけど > Nothingにならないって言うほうが正しいな と言う明らかな間違いを言い続けるのはどうかと思うぞ… ⇒ >>655
680 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 18:10:12.28 ID:OyTS9aq30.net] 列ではなく、選択した箇所だけを固定したいのですが出来ませんか?
681 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 18:32:44.42 ID:ZoTD6ZCz0.net] >>666 違う 代入すればNothingになる その次にアクセスすると、またそのタイミングで自動的にNewされる
682 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 18:52:31.36 ID:DZfi33jJd.net] 各自が想定してるコードが違うんだから言葉遊びにすぎないよ 自分のレスもいまいちだったかもしれんがNothingをセットして終了するならNothingかもしれないが 後続のコードにIs Nothingなり変数の参照があるならそれは結果的にNothingではなくなるのと一緒と自分は思ってるだけ 例に出して申し訳ないが > Set a = Nothing > のあとに > MsgBox (a Is Nothing) これとかね 自分なりの結論は宣言時にNewは使わないほうが無難
683 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 19:12:31.97 ID:YOHlvasK0.net] >代入すればNothingになる >その次にアクセスすると、またそのタイミングで自動的にNewされる 厳密にはその通り そんなことは分かったうえで、それをコード上で確認できないから Nothingにならない と表現したわけで、その表現が間違いらしいですわ (VBAコードから)オブジェクト変数をNothingとして評価できない すべての個所をそう読み替えといてくれ 飽きたし俺はこの話はもうこれで終わり
684 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 19:15:45.64 ID:YJRadFF90.net] まぁ>>670 の言う通り言葉遊びだよね みんな実際の挙動は理解しての会話になってるみたいだし
685 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 19:19:18.21 ID:y+mxjJK80.net] まあオレは今まで知らなかったけどな!
686 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 19:32:15.47 ID:/IcSX3Pk0.net] >>644 おれ以外にもthom先生見てる人いたか
687 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 20:35:52.45 ID:TgcL8J/yM.net] どう見ても最初はわかってなかったやろ 最後にやっと理解できたみたいだけど
688 名前:デフォルトの名無しさん mailto:sage [2022/03/29(火) 21:25:13.63 ID:YV5lTWI/0.net] 人に優しく行きましょう それは分かる人に与えられた特権なのです
689 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 05:40:49.56 ID:bXpTryOw0.net] 人生は優しくなるためにある
690 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 08:23:09.21 ID:0ps204vGM.net] スマホ手打ちなので誤字等ありましたらすみませんがよろしくお願いします。 rangeを用いた範囲指定でcells(row,columns)の行、列の部分に端数切り上げで数式を入れたいと考えています。 vbaで roundupを用いる時はworksheetfunction.をつける必要があることをネットで知ったのですが、ページによって頭にapplication.をつけてるものとそうでないものが混在しました。有無によってどのような違いがあるのか教えてください。
691 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 08:47:30.52 ID:06EhkzBAd.net] 数式を入れるのかワークシート関数を使って値をいれたいのかよくわからないけど 後半の質問であればVBA上では動作に違いはないよ 「https://docs.microsoft.com/ja-jp/office/vba/api/excel.application(object)」の 「アクティブ セル (ActiveCell プロパティ) など、最も一般的なユーザーインターフェイス オブジェクトを返すプロパティとメソッドのほとんどは、Application オブジェクト修飾子を指定しないで使用できます。」 と書いてある通り こういう質問する前にヘルプを見ると知りたい事や知っておいたいいことが書いてる場合もあるし怪しい回答の知識を覚えなくて済むから見る癖つけたほうがいいぞ
692 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 08:54:37.31 ID:6Q6BE8PxM.net] >679 ありがとう、参考にします。
693 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 09:15:22.27 ID:p8/VPuFXr.net] いえいえ
694 名前:デフォルトの名無しさん [2022/03/30(水) 10:25:12.15 ID:otm0Hfbh0.net] 実際に組んでみてうまく行かない場合に調べるとか質問とかしたらいいと思う
695 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 10:38:48.27 ID:xL2+oAob0.net] ちょっと教えてください 複数のシートを一緒にスクロールして 常に同じ位置に同じ行列が表示させられるような移動方法ってありますか? 例) シート1〜シート10までをグループ化して シート1をスクロールして1000行目を頭に表示すると 残りのシート2〜シート10も同じように1000行目を表示している よろしくお願いします
696 名前:デフォルトの名無しさん [2022/03/30(水) 14:07:54.57 ID:4QxrGADI0.net] 裸の王様がやってきた やってきた やってきたぞ
697 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 19:23:16.04 ID:QNA9H61R0.net] >>683 いったんアクティブにしていいなら Application.GotoとかWindow.ScrollIntoViewとかで表示位置は変えられるけど まあ使い物にならない可能性が高いな アクティブじゃないシートのスクロール位置を変える方法があるなら俺も知りたい それかWindow10個作って同時にスクロールにするとか
698 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 19:31:25.53 ID:ljpoek3c0.net] 複数のシートのデータを纏めたシートを作ったらどうかな
699 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 19:32:55.87 ID:2JfZorGz0.net] スクロールのイベントってないんか クリックしたセルを同じにするマクロ なんじゃこりゃ Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) If Sh.Name = "Sheet1" Then Sheets("sheet2").Select Sheets("sheet2").Cells(Target.Row, Target.Column).Select Sheets("sheet3").Select Sheets("sheet3").Cells(Target.Row, Target.Column).Select Sheets("sheet1").Select End If End Sub
700 名前:デフォルトの名無しさん [2022/03/30(水) 19:47:16.20 ID:R9seM6Mc0.net] 馬鹿が考えた操作なんて実装しても、所詮馬鹿の馬鹿な発想でしかない
701 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 22:06:13.73 ID:wN+Ljz7f0.net] >>687 フォーム内のスクロールバーはイベント取得できるぽい そういうのでいいならフォーム内スクロールバーに従ってシートをスクロールさせることはできそう もしくはシート1のスクロールを監視して自分でイベント発行するか
702 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 22:25:38.10 ID:N270RWsC0.net] 彼女の下のお口から出る糸を、シート(She糸)と呼びます
703 名前:デフォルトの名無しさん mailto:sage [2022/03/30(水) 22:25:54.14 ID:2JfZorGz0.net] >>689 逆にスクロールを実装すればよかったのね 下スクロールを実装したら期待通りの動きになったわ Sub Macro4() ' Keyboard Shortcut: Ctrl+Shift+P Windows("Book1 - 1").Activate ActiveWindow.SmallScroll Down:=30 Windows("Book1 - 2").Activate ActiveWindow.SmallScroll Down:=30 Windows("Book1 - 3").Activate ActiveWindow.SmallScroll Down:=30 End Sub
704 名前:デフォルトの名無しさん mailto:sage [2022/03/31(木) 04:24:20.35 ID:YoVJ22V0M.net] 糸を出す女ってスパイダーガールか
705 名前:デフォルトの名無しさん mailto:sage [2022/04/01(金) 07:19:21.13 ID:fdMR9HVCM.net] 宗教的な話題になりそうだけど、If文で判定入れてそれ以外の場合は何もしないって処理の時、elseを省く?それとも何も処理をしないって明示するためにelseの中に何も書かない?
706 名前:デフォルトの名無しさん mailto:sage [2022/04/01(金) 08:08:06.08 ID:AJ0kjIG/a.net] 俺は省く 逆に Select Case の Case Else は必ずつけて何もしなくていいことを明示するコメントを書いておく
707 名前:デフォルトの名無しさん mailto:sage [2022/04/01(金) 08:13:36.66 ID:YZ/4IsUH0.net] こういう書き方ってどうにかしてうまくまとめる方法はありますか? if C=1 then if B=1 then if A=1 then msgbox "メイン処理を実行します" else msgbox "A=1じゃなかったので実行しなかった" else msgbox "B=1じゃなかったので実行しなかった" else msgbox "C=1じゃなかったので実行しなかった"
708 名前:デフォルトの名無しさん mailto:sage [2022/04/01(金) 08:33:32.40 ID:cX1o4aeta.net] >>695 If C <> 1 Then msgbox "C=1じゃなかったので実行しなかった" Goto Skip End If If B <> 1 Then msgbox "B=1じゃなかったので実行しなかった" Goto Skip End If If A <> 1 Then msgbox "A=1じゃなかったので実行しなかった" Goto Skip End If msgbox "メイン処理を実行します" Skip: Goto 嫌なら Sub に入れて Return とか
709 名前:デフォルトの名無しさん mailto:sage [2022/04/01(金) 09:19:19.95 ID:qbFmdfWP0.net] >>695 ネスト深くなるとわかりにくい 処理は簡単な単位でまとめたほうがいい 実行する/しないは一つの単位(success/errorのように)としてまとめたほうがいい 拒否理由="なし" if c<>1 then 拒否理由="cじゃない" else if b<>1 then 拒否理由="bじゃない" else if a<>1 then 拒否理由="aじゃない" if 拒否理由="なし" メイン処理 else msgbox 拒否理由&"ので実行しません"
710 名前:デフォルトの名無しさん mailto:sage [2022/04/01(金) 19:02:13.39 ID:qNIRpAbL0.net] わかりにくいってだけで正常に動作しているならコメントでも書いとけばいいんじゃね
711 名前:デフォルトの名無しさん mailto:sage [2022/04/01(金) 19:04:18.25 ID:iXF+QXI0M.net] >>696 do loop 0でブレイク
712 名前:デフォルトの名無しさん mailto:sage [2022/04/02(土) 10:46:13.39 ID:fjGlq1dk0.net] >>697 おれもこんな感じだな Elseifは好きじゃないからSelectCaseかなあ
713 名前:デフォルトの名無しさん mailto:sage [2022/04/02(土) 12:32:39.80 ID:wbru5aYXa.net] VBA の Select Case は Case 節に式が書けるから素直に Select Case True Case C <> 1 msgbox "C=1じゃなかったので実行しなかった" Case B <> 1 msgbox "B=1じゃなかったので実行しなかった" Case A <> 1 msgbox "A=1じゃなかったので実行しなかった" Case Else msgbox "メイン処理を実行します" End Select がわかりやすいかな
714 名前:デフォルトの名無しさん mailto:sage [2022/04/02(土) 13:02:04.64 ID:ZSAOoecqp.net] >>701 俺もこんな感じにするかな C#とかと違って;で止められないけど まぁそれはそれとして。
715 名前:デフォルトの名無しさん mailto:sage [2022/04/02(土) 19:50:51.52 ID:xmwnc1Js0.net] 複数の条件が成り立つ場合の優先度とか気にせんと・・・
716 名前:デフォルトの名無しさん mailto:sage [2022/04/02(土) 20:08:08.57 ID:rQp/oHNqa.net] >>703 なんでドキュメント読まないの? 複数の Case 句の expressionlist 式に一致する場合は、最初に一致した句に続くステートメントのみが実行されます。 https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/select-case-statement
717 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 00:02:19.90 ID:ZgXClf4M0.net] A=1かつB=1かつC=1だったらXが実行されるって言う事ではないのね なんかややこしいね(´・ω・`)
718 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 03:01:36.86 ID:J74pUyNp0.net] 俺は中身が1行の時はCaseを1行にまとめる派 Sub Macro() Select Case True Case C <> 1: errmsg ("C") Case B <> 1: errmsg ("B") Case A <> 1: errmsg ("A") Case Else: MsgBox "メイン処理を実行します" End Select End Sub Sub errmsg(s$) MsgBox s & "=1じゃなかったので実行しなかった" End Sub
719 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 06:50:49.06 ID:o4u0MtXma.net] >>706 errmsg の呼出時の括弧は要らないのでは?
720 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 07:52:44.68 ID:6Vj/pyuu0.net] >>706 こういうふうにはしないほうが良い? Sub Macro() Select Case True Case C <> 1: msg ="C" Case B <> 1: msg ="B" Case A <> 1: msg ="A" Case Else: msg= "メイン処理を実行します" End Select End Sub msgbox(msg)
721 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 08:39:48.32 ID:D1zTFGCZM.net] そうやって本筋じゃない方へ話題は逸れていく
722 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 09:01:58.41 ID:Uf1/B9Ep0.net] Subの場合は 括弧を付けるならCallも付ける Callを付けないなら括弧も付けない それだけ
723 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 09:05:23.70 ID:r53Jbhkva.net] >>708 > こういうふうにはしないほうが良い? うん、それだと C = 2 でテストしたら単に C って表示されるだけだし
724 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 09:06:11.26 ID:6Vj/pyuu0.net] >>709 今回はどんどん話を膨らませていいよ
725 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 10:18:01.32 ID:spDayutJd.net] 僕が考えた最高のコード ってやつだろこんな話題にくいつくのもはずいわ
726 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 10:39:12.57 ID:6Vj/pyuu0.net] >>708 は間違いね こういう風に、メッセージの中だけ変数に入れて最後で表示させるってのはやめたほうがいいでしょうか Sub Macro() Select Case True Case C <> 1: msg ="C=1じゃなかったので実行しなかった" Case B <> 1: msg ="B=1じゃなかったので実行しなかった" Case A <> 1: msg ="A=1じゃなかったので実行しなかった" Case Else: msg= "メイン処理を実行します" End Select End Sub msgbox(msg)
727 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 10:49:41.47 ID:LxaPNz9fM.net] 好きにすればいい
728 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 12:48:35.67 ID:AxYcslms0.net] >>714 実行しなかったって表示するのに実行しそうだな
729 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 13:26:31.81 ID:mz7mxvwZp.net] しねーよハゲ
730 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 15:21:18.52 ID:4YOQBH220.net] お前ら頑張ってるけど メッセージなんかただの処理サンプルだろうから >>701 が採用されそうだけどね
731 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 15:52:40.85 ID:vYlFEoJTd.net] 実際の仕様でもなんでもない話に採用もクソもないのでは 好きにすればいいはなし
732 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 17:28:53.57 ID:m8vuVm8ra.net] 話題に食いつくのははずいのに批判だけはするんだな てか、批判しかできないのかなw
733 名前:デフォルトの名無しさん mailto:sage [2022/04/03(日) 17:42:03.95 ID:6Vj/pyuu0.net] 草
734 名前:デフォルトの名無しさん mailto:sage [2022/04/05(火) 23:43:32.11 ID:4aElhsU0a.net] >>714 最高のコード
735 名前:デフォルトの名無しさん mailto:sage [2022/04/07(木) 20:06:13.11 ID:k57kmbe60.net] >>722 End Sub の下に msgbox(msg) があるのに?
736 名前:デフォルトの名無しさん [2022/04/07(木) 20:57:01.15 ID:WZu7hIyw0.net] やっと書き込めた。 BB2Cが死んでJane Stileとかいうアプリで書き込んでるけど、VBAスレもその煽りかめっきり書き込み減ってるね。
737 名前:デフォルトの名無しさん mailto:sage [2022/04/07(木) 22:52:18.94 ID:shKfmndDa.net] >>723 最(もお茶が)高(く噴き出た)のコード
738 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 09:32:33.40 ID:P5V0Axif0.net] ハイパーリンクで、他のファイルを開こうとすると、警告ダイアログが出ますが、 (「ファイルには、ウイルスやコンピューターに問題を…」) 非表示にできますか? レジストリでDisableHyperlinkWarningをやっても、ダメでした…。
739 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 09:48:16.01 ID:O75PAQWK0.net] ユーザーフォームに設置したボタンをクリックすると Private Sub 〜〜〜_Clickのイベントプロシージャが追加されますが、 このコードの追加位置はどういう基準で決まっていますか? すぐ隣のボタンのClickの近くに挿入されることもあれば、 結構離れた位置に挿入されることもあります。
740 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 18:32:41.81 ID:DozpoMh4a.net] 質問は一人一つまで。
741 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:07:30.71 ID:aNhRPKRk0.net] >>726 ウイルスでも作っているの?
742 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:44:29.30 ID:p3Omju050.net] エクセルVBAでウイルスを作ることはできますか? エクセルVBAでAIを作ることはできますか?
743 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:49:56.82 ID:0/Kcf5P10.net] >>726 試してないから出来るか分からんけどディスプレイアラートは?
744 名前:デフォルトの名無しさん [2022/04/08(金) 19:59:37.27 ID:iHtexTHZ0.net] >>730 直クライアントだからな 余裕で出来る
745 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:10:13.83 ID:cwm3b4Q1d.net] >>730 はい はい
746 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:43:11.43 ID:p3Omju050.net] >>732 でもおまえウイルスの作り方わからないじゃん
747 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:59:12.69 ID:AMkeYZ900.net] ウィルスの定義は「操作する人が意図しない動作を起こすプログラム」 だから空白のボタン押すと背景の色が変わるとかそんなんでもウィルスです
748 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 21:53:49.35 ID:iHtexTHZ0.net] やっとBB2Cが使えるようになった >>734 煽ってもダメ ウイルスなんて作らないし 作り方だって載せるつもりはないよ
749 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 22:14:19.86 ID:AMkeYZ900.net] >>736 いやもう作り方載せたって>>735
750 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 22:18:44.47 ID:7fG2FYL40.net] ヤンキー・ドゥードルが懐かしい
751 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 00:48:37.33 ID:C63TJhml0.net] AIの定義が明確に定まってないので自己学習して勝手に洗練されていくものもAIだしただのマクロもAI
752 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 00:55:30.60 ID:tyw5ZPAK0.net] AIは作るものじゃない 育むものなんだよ
753 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 02:28:28.01 ID:FQQX8rtBa.net] >>736 もうすでにウイルスのソースコード載ってますが? >>714
754 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 06:04:10.90 ID:+bGajSMm0.net] 任意の列が左端に来るように水平スクロールする方法ってある? Application.Gotoで左端に寄せてSmallScrollで上下位置を調整してるけど完全な水平スクロールにはならないんだよね
755 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 07:34:48.36 ID:Dec5MFVZ0.net] With ActiveWindow .ScrollRow = x .ScrollColumn = y End With