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
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
756 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 08:12:43.36 ID:+bGajSMm0.net] >>743 それも試したけど、アクティブセルが変わると数値が変わらない?
757 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 08:52:12.11 ID:+bGajSMm0.net] 任意の列とアクティブセルの列の差を求めればScrollRowで行けるかな? 今度試してみよう
758 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 11:14:24.15 ID:Mfv2lAJId.net] Sub World() Dim Abe As Virus Set Abe = New prime minister Abe.coin.End(xldown) Abe.tax.End(xlup) Abe.wing.End(xlright) End World
759 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 12:54:27.64 ID:FQQX8rtBa.net] で、誰かがズームしたりページレイアウト変えたりして、 トラブルの元になると。 ウィンドウ系はいじらない方がいいと 職場のおじいちゃんが言ってた。
760 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 13:45:19.95 ID:6rDUdJJw0.net] アース、ファイア、ウォータ系の属性のほうがいいかもね
761 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 14:39:59.55 ID:FQQX8rtBa.net] Excel VBA の Window 関連のオブジェクトって、船に刻して剣を求むって感じ 走っている電車の中から、指で窓ガラスに風景を描くみたいな
762 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 15:26:28.03 ID:+bGajSMm0.net] さっぱり例えが分からんw
763 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 16:04:42.29 ID:2h0/Yyo40.net] 詩的すぎるだろw
764 名前:デフォルトの名無しさん [2022/04/09(土) 18:41:50.44 ID:8cH1hwr70.net] >>749 なるほど納得。 納豆食う。
765 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 20:23:31.13 ID:8/Ft6Y7L0.net] 日本人だけど意味がさっぱりわからんw
766 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 22:16:01.68 ID:XcpxlUbda.net] ごめん失敗したテヘ
767 名前:デフォルトの名無しさん mailto:sage [2022/04/10(日) 01:02:21.87 ID:tD6svEJl0.net] ヘッドレスChromeをseleniumやWebdriverなしでどうにかなりませんか?
768 名前:デフォルトの名無しさん mailto:sage [2022/04/10(日) 19:56:53.98 ID:anoG1hsda.net] >>755 UiPathおすすめ
769 名前:デフォルトの名無しさん mailto:sage [2022/04/11(月) 21:59:21.11 ID:Kyp6sDnX0.net] オブジェクトの代入を同一プロジェクトで使いまわすことはできるでしょうか? Public ws1 as worksheet Module1 Sub test1() Set ws1 = Worksheets("Sheet1") ws1.Range("A1") = "Test1" End Sub Module2 Sub test2() Set ws1 = Worksheets("Sheet1") ws1.Range("A2") = "Test2" End Sub これを下記のようにできないかな、ということです。 Public ws1 as worksheet Set ws1 = Worksheets("Sheet1") Module1 Sub test1() ws1.Range("A1") = "Test1" End Sub Module2 Sub test2() ws1.Range("A2") = "Test2" End Sub
770 名前:デフォルトの名無しさん mailto:sage [2022/04/11(月) 22:26:56.33 ID:p2QF/trT0.net] なにがしたいのか
771 名前:デフォルトの名無しさん mailto:sage [2022/04/11(月) 22:56:21.06 ID:7xr/cYmKd.net] オブジェクトは無理でしょ Funtionで対応すれば良い 最もそうしない方が良いからデフォで出来ないようになってることは考慮すべきだと思う
772 名前:デフォルトの名無しさん mailto:sage [2022/04/11(月) 23:25:19.91 ID:9dLPe5470.net] ん
773 名前:?そもそもワークシートってオブジェクト化されてるんだからわざわざ変数にセットする必要なくない? 対象のシートがコードを書いているファイルにあるなら Sheet1.Range("A1").Value = "Test1" で良いでしょ? [] [ここ壊れてます]
774 名前:デフォルトの名無しさん mailto:sage [2022/04/11(月) 23:56:27.01 ID:Kyp6sDnX0.net] 簡略化するためにThisworkbookを省略して書きましたが、実際には マクロ動作中にほかのブックを触っても大丈夫且つコードがすっきり するようにSet ws1 = Thisworkbook.Worksheets("Sheet1")のように しています 少し時間ができたので増築増築でややこしくなったコードを整理している 最中で、複数のプロシージャで使う固定のシートはまとめて変数にセットして おこうかと思ったのですがFunctionで調べてみます、ありがとうございます
775 名前:デフォルトの名無しさん mailto:sage [2022/04/11(月) 23:58:43.07 ID:amT3mnzR0.net] 変数を使いまわす(というか広域で使う)のは普通にできる モジュールレベルでPublic変数定義するだけ なんならモジュール名で修飾してもいい ただ、変数の寿命が管理しにくいから、 中身がセットされてないとか、いつの間にか中身が消えてるとかいうことになるかもなw
776 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 00:23:20.44 ID:ccOkbRo70.net] シートをオブジェクト名で指定すればどのブックを触っていようがそのコードが書いてあるブックから参照すると思うのだけど >>761 がやろうとしてる事って他のブックのシートを変数に収納したい場合しか使わなくないか?
777 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 02:00:50.12 ID:vEgugssg0.net] >>763 一部のメソッドでオブジェクト名を省略できないのがあるじゃん 自分がちゃんと理解してないのが原因なのはわかってるけど、構文とかデフォルトのオブジェクトとかいちいち覚えるのが面倒くさいんだわ
778 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 06:30:21.52 ID:j+U2fOIu0.net] やるならこうか? init()に色々初期化みたいなものをまとめて、毎回呼び出す Public ws1 Sub init() Set ws1 = Worksheets("sheet1") End Sub Sub foo() Call init Cells(1, 1) = 1 End Sub Sub foo2() Call init Cells(2, 2) = 2 End Sub
779 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 06:46:39.08 ID:da5RcI7d0.net] 汎用性と独立性を確保するなら引数でシートを渡せ
780 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 07:15:19.69 ID:t+9U/8lg0.net] >>757 初心者がかち当たるあるある疑問だよね。 最初は>>762 の言う方法でやってみればいいと思うよ。 もう少しやり込んでくればデバッグし易くするためにモジュールスコープレベルのPrivateな変数をPublicな関数やプロパティでやり取りするようになるんだけどね。
781 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 07:20:31.49 ID:j+U2fOIu0.net] こういうイメージ? よく考えたらpublicにする必要性が全くない Sub init() Set ws1 = Worksheets("sheet1") Set ws2 = Worksheets("sheet2") Set ws3 = Worksheets("sheet3") Set ws4 = Worksheets("sheet4") End Sub Sub foo() Call init ws1.Cells(1, 1) = 1 End Sub Sub foo2() Call init ws2.Cells(2, 2) = 2 End Sub
782 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 07:21:37.35 ID:j+U2fOIu0.net] と思ったらpublicいるわスコープ他の言語と間違えたわ
783 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 17:42:54.51 ID:oSnOjvyr0.net] Recordset.openでselect文を実行するとエラーになるけどツールでログに出した物を実行してもエラーにならない時って何が原因? ダブルクォートは含まれてない あとはイミディエイトウィンドウに出てくるsqlが変なとこで改行されてるけど関係ないよね?
784 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 17:45:16.76 ID:pq/BAZJoM.net] シラネーヨ
785 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 19:22:20.07 ID:D2BP6h+A0.net] 742で書いた完全な水平スクロールできたわ
786 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 19:25:18.42 ID:D2BP6h+A0.net] >>757 Sheet1モジュールに書くだけでは?
787 名前:デフォルトの名無しさん (ワッチョイ c6da-EhK1) mailto:sage [2022/04/12(火) 19:48:28 ID:hYDOb6070.net] >>770 それだけで答えられるほどエスパーじゃない
788 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 19:58:04.86 ID:t+9U/8lg0.net] >>770 まず出力されているエラーは何なの?
789 名前:デフォルトの名無しさん mailto:sage [2022/04/12(火) 20:52:44.19 ID:oSnOjvyr0.net] ora 00933 sqlコマンドが正しく終了されていません が出るんだよね
790 名前:デフォルトの名無しさん (ワッチョイ e2da-vtdv) mailto:sage [2022/04/12(火) 21:13:36 ID:cLFsXNmb0.net] そのままのエラー文でググれば一発で回答出てくるぢゃねーか
791 名前:デフォルトの名無しさん (ワッチョイ e24f-EtAN) mailto:sage [2022/04/12(火) 21:30:37 ID:t+9U/8lg0.net] >>776 SQLのケツに;付けろってよ
792 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 01:24:31.19 ID:idY8HIbz0.net] 757です、いろいろご意見ありがとうございます その後考えた結果、シートのオブジェクト名を変数として代入しようとした名前に変えればいいんじゃないかと思いついたんですが問題ないでしょうか
793 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 03:33:56.70 ID:+aMOkW0p0.net] >>779 シチュエーションにもよるかな。 シート名を変えられてもそのシートを使う前提であればそれでいいんじゃないかな。 その場合、 自ブックのシートであれば Dim targetSheet As Worksheet Set targetSeet = 変更後のシートオブジェクト名 みたいに使えるし、 他ブックのシートを扱う場合は Dim targetSheet As Worksheet Set targetSheet = ブックオブジェクト.(シートオブジェクト.Name) みたいに書けば設定出来る。 もっとも、後者の書き方で前者を賄えるから後者だけ関数化してそれを使い回してもいいけどね。
794 名前:デフォルトの名無しさん (ワッチョイ 7b68-xb3m) mailto:sage [2022/04/13(水) 07:03:06 ID:CoVp5Ukt0.net] >>779 オブジェクト名はやめたほうが良い。あんまり意味が無い やるなら、シートの内容を変数名にする ローマ字 set shain_master = sheet("社員マスター") 日本語許容するなら set 社員マスタ = sheet("社員マスター") なおベストは英語
795 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 07:35:12.98 ID:6wqio091M.net] 会社員を英語でなんと言うかがわからんわ worker(労働者)やemployee(被雇用者)じゃニュアンスが違うしー 辞書なしですぐ出てくるレベルのやつはVBAなんかやってないやろ、という偏見
796 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 07:37:38.41 ID:CoVp5Ukt0.net] staffでええやろ
797 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 07:50:17.55 ID:+aMOkW0p0.net] >>782 会社員だから companyEmployeeでいいんじゃね?
798 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 07:56:48.50 ID:HWn/7Hddd.net] Google翻訳だとmember んー、なんかしっくり来ない
799 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 07:59:18.64 ID:PsKYJxH90.net] staffは関係者ってイメージ
800 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 08:15:50.97 ID:1kKv9jFRd.net] staffという単語はcompanyと同義で集団に対して使うって日本人は意外とわかってない
801 名前:デフォルトの名無しさん mailto:sage [2022/04/13(水) 08:30:55.20 ID:CoVp5Ukt0.net] employee以外ないだろう
802 名前:デフォルトの名無しさん (スプッッ Sd22-eTSu) mailto:sage [2022/04/13(水) 08:56:08 ID:wBIIYhTid.net] 会社員という表現は英語では難しい 大人しく syachiku か Karoushi_Man にしとけ
803 名前:デフォルトの名無しさん (ブーイモ MM02-CB6w) [2022/04/13(水) 09:04:23 ID:YJgAVhDkM.net] 業務用語の変数は日本語で業務用語そのものを使ってる 中途半端な英語だと誤解しやすいし、ローマ字は読みづらい