Excel VBA 質問スレ Part82

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2025/01/24(金) 03:31:15.25ID:l239yW+P
ExcelのVBAに関する質問スレ
コード書き込みや作成依頼もOK

次スレは>>980が立てること
無理なら細かく安価指定

関連スレ
Excel VBA 質問スレ Part79(ワッチョイあり)
https://mevius.5ch.net/test/read.cgi/tech/1674875532/
Excel VBA 質問スレ Part80(ワッチョイあり)
https://mevius.5ch.net/test/read.cgi/tech/1700826110/

※前スレ
Excel VBA 質問スレ Part79
https://mevius.5ch.net/test/read.cgi/tech/1674874007/
Excel VBA 質問スレ Part80
https://mevius.5ch.net/test/read.cgi/tech/1685489018/
Excel VBA 質問スレ Part81
https://mevius.5ch.net/test/read.cgi/tech/1713416618/
2025/05/10(土) 13:31:42.36ID:HZyfRGTg
金がかかるとなるとそりゃそうでしょ。
2025/05/10(土) 13:49:08.55ID:tG+fugNq
いや、経験上、金を問題にするのはある程度上の立場の人間なので、本質的でないしょーもない業務影響はあまり問題にしない。
〇業務を〇時間削減できるから人件費換算で導入コストと利用料を上回る効果が見込めますと説明できればよい。
くだらないことで難癖を付けてくるのは現場の人間。
639デフォルトの名無しさん
垢版 |
2025/05/10(土) 14:05:58.61ID:3Mk2sCKg
>>630
何が楽かさえわかってないのかよw
2025/05/10(土) 14:09:45.85ID:644AQTJb
無から有ってのは、何であれ産みの苦しみって奴で、社会でも人生でもあらゆる場面で起こり得る
有から別の有ってのは例えが判らんが、αというシステム化された処理が有って、その結果を元に
別のβを作ろうとしているのか、或いはαの改善品αUを作ろうとしているのか
前者なら無から有と一緒だし、後者なら元と成ってる最初のαを精査すればいいだけ
こんなもんSaaSでいいだろと思い込んでしまった原因を自省してみて、うかうか宣伝文句に釣られてただけと
理解出来たら儲けもの じぶんで実際にSaaSに移行してみて一年位稼働させてそれでも一切問題が発生しない
事を確認してから提案するぐらいの努力は発言する前に済ませておくべき
やってみましたできませんでしたは、殊営利を目的とする企業では落第の烙印を押されるだけ
プロトタイプ・試作品も無いまま実務で運用することほど無謀な試みは無い 旧日本軍大本営方式でしか無い
2025/05/10(土) 14:31:05.56ID:HZyfRGTg
>>638
利用者が習得するまでの学習コスト考えてる?

習得するのに時間がかかるとか操作が複雑になり過ぎたら反発すると思うけど。


今よりこれだけ簡単になりますって話なら反発も少ないのでは?
2025/05/10(土) 14:39:47.45ID:tG+fugNq
>>641
だからそれを含めて難しいって話でしょ
2025/05/10(土) 16:34:23.69ID:ngauQQ8E
話の逸れ方が大きくなってきたな
2025/05/10(土) 16:38:29.08ID:iGSB8dlv
前から先人達がこのスレで、Arrayを使って云々・・・と議論しているの見かけて、
「どこで活かせるんだろう?」と思っていたけど、
今日初めて使ってみた。

もともとは、Power Queryで複数のクエリーとピボットを順番に更新させるのをVBAでやっていたのだけれど、
「クエリと接続」とタスクマネージャーをずっと監視しているのもしんどいので、
ChatGPTに、
「クエリーやピボットテーブルのそれぞれを1つのステップとして、
WMIの "SWbemLocatorオブジェクトのConnectServerメソッド" とやらを使って、
各ステップの開始/終了時刻とCPU最大使用率のテーブルをワークシートに出力できないか?」
と相談したら、その中に、出てきましたよ、

' ステップ一覧
Dim steps As Variant
' 更新ステップのリスト(ステップ名, 実行内容)
steps = Array( _
Array("Q_1", "クエリ - Q_1"), _
Array("Q_2", "Query", "クエリ - Q_2"), _
Array("Q_3", "Query", "クエリ - Q_3"), _
Array("Q_4", "Query", "クエリ - Q_4"), _
Array("Q_5", "Query", "クエリ - Q_5"), _
Array("Q_6", "Query", "クエリ - Q_6"), _
Array("Q_7", "Query", "クエリ - Q_7"), _
Array("Q_8", "Query", "クエリ - Q_8"), _
Array("PVT_1", "Pivot", "PVT_1") _
)

と。
で、何度かやり取りした結果、うまく出来まスた。
2025/05/10(土) 18:59:33.45ID:Pq21kD+5
しねごみかす
646デフォルトの名無しさん
垢版 |
2025/05/10(土) 19:48:45.71ID:pekHwIHV
>>644
どれくらい処理の重い作業か、帰りの組み方をしているのか私には分かりませんが、
テーブルデータの整形が終わった後、一区切りついた後、テーブル関数やリスト関数などで繰り返し作業保護(一般的なeach?)
647デフォルトの名無しさん
垢版 |
2025/05/10(土) 19:52:02.31ID:pekHwIHV
>>646
を行う前に
必ず
List.Buffer Table.buffer を行うと(VBAの配列並にとは言いませんが)処理が劇的に早くなると思います。
私は2000行に6000行のTaxt.Containsをして結果をList.SelectやAnyTrueなどをしていますが、劇的に早くなりました。
648デフォルトの名無しさん
垢版 |
2025/05/10(土) 20:41:13.86ID:pekHwIHV
VBAでセルの中の改行のある大量の文字列の中から目的の情報を抽出するという試みをやっていたのですが、最近になってやっと改行で区切って、1行にバラすという事に気がつきました。
これで無関係な文字列の行はフィルターできるし、視認性が劇的に改善したしで本当に楽になった。
データは必ず一行づつという当たり前を改めて知らされた。
2025/05/10(土) 21:53:08.57ID:iGSB8dlv
今回Arrayを使って、各クエリー/ピボットテーブル更新中のCPU使用率を調べようとしたのは、
・複数の前処理ブックの共通テーブルを参照して、項目ごと時間軸串刺し合計や最大/最小値とその時間なんかを求めるブック
・仕上がり52,560行
・これでもまだ中間集計ブック
・将来的には104万行を超えるので、ベース集計クエリーにはデータ モデルを使用
・今の第8世代Core i7と32GBメモリーで、このブックの更新には20分超
・当初は、List.Buffer、Table.bufferをクエリーで使って高速化を試したが、これだけ行が多かったりクエリー依存が多いと、シーケンシャルにしてBufferしたつもりが前クエリーの再計算が入ってExcelが固まったので断念。
・逆に、104万行以内に収まる途中のクエリーは、ワークシートに書き出してこれを参照するようにしたら、最後まで計算できるようになった。
650デフォルトの名無しさん
垢版 |
2025/05/10(土) 23:00:42.57ID:pekHwIHV
>>649
クエリを分割したらいいって事でしょうか
中間テーブル?の様な
651デフォルトの名無しさん
垢版 |
2025/05/10(土) 23:08:41.01ID:pekHwIHV
>>649
明らかに不要なデータを元ファイルから削除するとか、グループバイがしたいのならワークシートで
652デフォルトの名無しさん
垢版 |
2025/05/10(土) 23:10:16.50ID:pekHwIHV
行の並び変えをするとか
不要な列は削除しておくとか
集計はパワーピボットを使用するとか、テーブルのjoinではなく、リレーションシップにするとか
できそうではないですか?
2025/05/10(土) 23:17:35.27ID:iGSB8dlv
>>650
別スレで
2025/05/11(日) 02:32:23.22ID:orNzllBw
属人化言い出したらExcelシートそのものも属人化だろな
2025/05/11(日) 06:38:44.59ID:dESx0WKG
>>654
これは正にだな
人によって非表示行(列)や非表示シート、
定義された名前を非表示にするやつすらいる
2025/05/11(日) 09:33:21.32ID:xj1UIMtq
他人のVBAより数式のほうが見たくなくなる
2025/05/11(日) 12:52:43.82ID:orNzllBw
世の中、属人化シートだらけ
2025/05/11(日) 13:42:45.69ID:oI5baM/t
逆に、「他人に見てもらう」ことを意識してExcel作っていたら、
独りよがりでない、少しはわかりやすいもの作るのかと。

「お天道様が見ている」
「第二の視座」
とか言うヤツ
2025/05/11(日) 13:57:41.75ID:UTf8BgbA
大さんという上司に観てもらってた良い思い出
660デフォルトの名無しさん
垢版 |
2025/05/12(月) 19:52:24.55ID:/MqwmjFI
Excel大好き人間としてはHaskellを推したい
661デフォルトの名無しさん
垢版 |
2025/05/13(火) 20:06:46.42ID:IQbEImBo
正規表現で漢字全てにマッチさせるにはユニコードの最後の漢字までを範囲にしたらいいのだすか?
2025/05/13(火) 20:43:44.18ID:UxpIpbA1
[\u4E00-\u9FFF]
663デフォルトの名無しさん
垢版 |
2025/05/13(火) 22:37:17.01ID:IQbEImBo
urlに恐らく改行が含まれているのですが、改行もマッチさせるとなるともはやなんでもマッチしてしまいますか?
664デフォルトの名無しさん
垢版 |
2025/05/14(水) 00:23:46.12ID:TPeqytUP
漢字で始まり、ひらがなで終わる
ひらがなのみ
カタカナのみ
マッチした結果を全てディクショナリーに登録して、アイテムは1+1を繰り返してカウントする
これだけでも頻度分析ができるんだね
2025/05/14(水) 00:57:58.82ID:WcLab/oc
>>664
それ単語の区切りはどうするの?
2025/05/14(水) 01:04:11.54ID:KAgWD1+F
仕事の管理でVBA使ってポツポツやってたけど違う業務管理が追加になってもうすっかりコードなんか忘れてるので面倒だなと思ってたけどChatGPTちゃんに聞いたら楽に組めた
Aのシートをコピーしてシート名はCにしてとかでもすぐに教えてくれるし
こんなのでもすっかり忘れてるから助かった
667デフォルトの名無しさん
垢版 |
2025/05/14(水) 01:12:17.68ID:TPeqytUP
>>665
漢字とひらがな
ひらがなのみ
カタカナだけ
意味のある言葉になっているよ
むしろ本当の本当に単語にまで分解しても意味がわからないよ
情報を細分化してもしょうがない
668デフォルトの名無しさん
垢版 |
2025/05/14(水) 01:49:41.56ID:TPeqytUP
例えば
お 世話 に なり ます(あるいは なります)
まで分解しても意味を持たないでしょう?
お 世話になります
で十分でしょう
東京タワー みたいに
漢字カタカナパターンもある事に気がついた
2025/05/14(水) 09:24:40.17ID:mIHvW3MM
それで分析できるのはその定義における節の頻度であり、一般的な単語とは異なる
それがお前の目的に合っているのであれば好きにしたらいい
ついでに言えばそんなもんMeCabに突っ込めばいいだけだからお前独自の方式なんて誰も必要とはしない
2025/05/14(水) 09:51:03.61ID:mHOx/gQ0
おー、MeCabってのがあるのね。めかぶって読めるなと書こうとしたら、本当にめかぶから名前を取っているのね。
671デフォルトの名無しさん
垢版 |
2025/05/15(木) 22:57:08.75ID:vsR8tMHm
めかぶというやつの公式ページ?の
一行一分
は誤字ですか?
それだったらテキストマイニングを極めていてもやっぱりこの程度なんだなと
あと何を言っているのかを判断するには前後の脈略が必要だし、日本語はひらがなに特に意味がある訳でもないから
そこまで単語に固執する必要もない気がする
2025/05/16(金) 09:43:09.58ID:IgvVjYfn
make a boo
673デフォルトの名無しさん
垢版 |
2025/05/16(金) 10:48:47.56ID:em0azm75
manko
2025/05/16(金) 13:02:22.31ID:TOZOy2SA
印刷範囲外のセルが
なぜか印刷範囲中央付近に
プレビューされ、実際にも印刷されます

改ページプレビューも利用して
グレーゾーンに押しやっている
テキストボックスなんですが
元の配置よりさらに外側に動かすと
印刷範囲から消えはします

そのため支障をきたしている
訳ではないのですが
なぜこうなってしまうのでしょうか?
2025/05/16(金) 13:04:09.96ID:TOZOy2SA
↑スレ違いでした、すみません
取り消します
2025/05/17(土) 09:02:45.85ID:ztNWa+hU
ラベルのAcceleratorって何に使うの?
2025/05/17(土) 10:17:32.20ID:BnclY/n2
マジレスすると
ボタンのタイトルを E&xcel とかにすると
Ctrl+x でボタンを押せるのが Accellerator じゃないかな
2025/05/17(土) 10:20:42.98ID:ztNWa+hU
でもラベル押せないじゃん
2025/05/17(土) 12:01:06.66ID:vJvypOU0
ボタンの上とかにラベルを貼り付けることで
マウスクリックした時、キーボード操作した時で同じ操作をさせられる
Accessなら、ラベル単体でもつついてあれこれできるけど、Excelではそんな機能は無い
SpecialEffectと併用して見た目押したようにできるかも知らんが
そんな無駄を付け加えてまでやりたいことなのかどうか
2025/05/17(土) 12:11:18.06ID:ztNWa+hU
回答?
独り言?

結局、何に使うの?
2025/05/17(土) 12:32:35.29ID:FyrcyVVg
一応、フォーカス移動には使えるんじゃない? それがどの程度嬉しいことかは微妙なところかもしれないが。
2025/05/17(土) 12:42:35.66ID:ztNWa+hU
テキストボックスの前に置いといて、ラベルにフォーカスさせると
テキストボックスにフォーカスされる
テキストボックスが複数あっても一発で選べる
なるほど、こうやって使うのか
2025/05/17(土) 12:48:29.09ID:AUJKaPS/
それは可能かもしれないけど、テキストボックスにフォーカスを移動するためにアクセラレータを使うのはどうかなぁ
2025/05/17(土) 12:49:47.54ID:AUJKaPS/
>>661が指摘してましたね
スレ汚しでごめんなさい
2025/05/17(土) 12:58:22.21ID:ztNWa+hU
よく出来たアプリはみんなできるようになってるよ
S)検索
みたいな感じ

マウスしか使わない人はそんなこと考えないし、
タブオーダーも無茶苦茶で、どこに飛ぶか判らない
686デフォルトの名無しさん
垢版 |
2025/05/17(土) 14:53:18.10ID:Mou0F5/k
フォントサイズをセルの横幅にジャストサイズで合わせたいのですがどの様にすればいいでしょうか?
縮小して全体を表示するは試していますが、念のために列幅と文字数を割って1文字あたりの大きさをまとめるとか、そう言った確実な方法を探しています。
2025/05/17(土) 18:12:34.03ID:VJRyFCkb
そんな方法はない
2025/05/17(土) 18:32:10.79ID:Vu4+Tz9e
仕方が無い
689デフォルトの名無しさん
垢版 |
2025/05/17(土) 18:34:04.52ID:Mou0F5/k
やっぱりセルに実際の文字列を入れて
治ったセルの高さ/行数 = 1行あたりの行の高さ
で割り出すしか無さそうですね
2025/05/17(土) 18:37:59.26ID:rdyb/DPe
画像で保存してセルに合わせて画像を拡大縮小したらどうかな
691デフォルトの名無しさん
垢版 |
2025/05/17(土) 18:49:20.89ID:B7xQsXDd
一つのセルにそんなに長い文字列を入れてしまうデザインを見直したほうが早いかも
692デフォルトの名無しさん
垢版 |
2025/05/17(土) 18:50:45.81ID:Mou0F5/k
やっとdictionaryのネスト、親ディクショナリー、子ディクショナリーが理解できました。
よくdictionaryのitemに配列を入れたら値が複数登録できると言うコードが詳細されていて、私も四苦八苦しながら覚えました。

だけどこれって本当は親ディクショナリー、子ディクショナリーが正しい答えですよね
ディクショナリーだとそれぞれの項目が文字列で指定でますが、配列だとインデックスでしか登録できない
2025/05/17(土) 19:22:23.61ID:hPL9irHC
>>686
うちは24や48から2ポイントずつ減らしならが総当りしてる
694デフォルトの名無しさん
垢版 |
2025/05/17(土) 20:04:52.16ID:Mou0F5/k
>>691
1行なら 縮小したら全体を表示する が使えるから、、、?
そして多めに行数を作成して、行数が少ないのなら削除するか、非表示にすればいいと?
なるほど
695デフォルトの名無しさん
垢版 |
2025/05/17(土) 20:06:06.97ID:Mou0F5/k
>>693
私も12の倍数で作成しています。
696デフォルトの名無しさん
垢版 |
2025/05/17(土) 20:19:45.31ID:Mou0F5/k
印刷周りの仕様、挙動をよく理解していなくて申し訳ないですが、
改ページで1ページの範囲を設定していれば、どれだけ行が大きいか、行数が多いかしても、
必ず1ページになる様にExcel側が自動調整されるのでしょうか?
優先度は改ページ、全ての行、列を〜ページに合わせる、zoomの順番でしょうか?
697デフォルトの名無しさん
垢版 |
2025/05/17(土) 21:01:27.82ID:HReuuPkT
>>696
それはVBAの問題なのか?
ここは何のスレかわかってるか?
698デフォルトの名無しさん
垢版 |
2025/05/17(土) 21:14:59.94ID:Mou0F5/k
>>697
VBAで書類の作成、印刷の自動化を申しつけられて、全自動化時代は余裕なのですが、印刷周りの設定はよく知らなくて、しかも実際に印刷作業をする人は別の場所の人だから、1ミリでも小さければ気に食わないんでクレームを入れてくるんです。
699デフォルトの名無しさん
垢版 |
2025/05/17(土) 21:18:54.18ID:Mou0F5/k
.PageBreak
.Zoom
.FitToPagesWide
.FitToPagesTall
font-size
セルの縦横
これら全てVBAではないのですか?
700デフォルトの名無しさん
垢版 |
2025/05/17(土) 21:29:04.01ID:HReuuPkT
>>699
VBA以前にそもそもExcelの印刷自体を知らない人なんだということはよくわかった
1ミリも狂わないように印刷するにはWindows APIを呼び出して使うかExcelで印刷するな
701デフォルトの名無しさん
垢版 |
2025/05/17(土) 21:36:27.58ID:Mou0F5/k
>>700
どのAPIがよろしいのでしょうか?
PDFには常に出力しています
702デフォルトの名無しさん
垢版 |
2025/05/17(土) 21:39:10.06ID:HReuuPkT
>>701
Canvas API
教えたからそろそろ消えろ
703デフォルトの名無しさん
垢版 |
2025/05/17(土) 21:56:35.49ID:Mou0F5/k
>>702
それはWindows APIなのでしょうか?
704デフォルトの名無しさん
垢版 |
2025/05/17(土) 22:02:21.39ID:HReuuPkT
>>703
いい加減にしろ
後は自分でPostScriptを書いてPDFファイルを作れ
705デフォルトの名無しさん
垢版 |
2025/05/17(土) 22:20:55.25ID:Mou0F5/k
>>704
Canvas APIはWindows APIなのでしょうか?
私はVBA以外はほぼ無知なのですみません
2025/05/17(土) 22:21:25.66ID:c0BqlY74
ぐぐれ
707デフォルトの名無しさん
垢版 |
2025/05/17(土) 22:28:10.07ID:Mou0F5/k
本当にAIのコミュ力につくづく人間は敵わないなと思う
708デフォルトの名無しさん
垢版 |
2025/05/17(土) 22:40:26.23ID:HReuuPkT
>>707
とことん馬鹿だな
教えてもらってそれかよ
消えろや
709デフォルトの名無しさん
垢版 |
2025/05/17(土) 22:48:37.53ID:Mou0F5/k
>>708
それがコミュニケーション能力が高い事なんですか?
2025/05/17(土) 22:54:54.99ID:2QmOCSUM
煽り耐性ないやつが次々と引っかかっててウケるー
711デフォルトの名無しさん
垢版 |
2025/05/17(土) 22:58:48.79ID:HReuuPkT
馬鹿はこうやって本性を曝け出す
2025/05/17(土) 23:31:01.83ID:QeS8RaKg
エクセル(VBA)で印刷の精度を求めるのは徒労だと思う
2025/05/18(日) 08:45:52.75ID:cP1cyZx+
いまだに位置合わせがどうこうやってる
生産性激低日本さん
714デフォルトの名無しさん
垢版 |
2025/05/18(日) 09:28:02.03ID:NiGvaOOd
>>692
配列がいい場合もある
使い分け
2025/05/18(日) 10:05:14.14ID:v1lfaeE4
>>696
相談の核は、構文の式の優先度を知りたいのか
成果物を要求する人の要望に応じるには、どこを直せばいいのかを知りたいのか

それらの式をあれこれ工夫して組み込んでもどうしてもズレてしまう だの
今のところ問題無いが先々を考慮して問題に成りそうなヶ所を潰しておきたい だの
こちら側では相談の意図がいまひとつ掴みきれない
具体的にサンプル上げるなり事例を書き込むなり
1mmズレるケースとズレないケース両方があれば、より判断しやすい
おれのはズレないよ アー〇ネイ〇ャーだもの
2025/05/18(日) 11:39:33.78ID:/BWwyZ2v
Dictionaryのkeyに複数値を入れれば2次元で格納できる
717デフォルトの名無しさん
垢版 |
2025/05/18(日) 11:50:29.67ID:Mk3OrkwO
>>715
改ページと全ての行、列を1ページに合わせると、Zoomのこの3つの依存関係、絡み合いが知りたいですね。
AIのご説明では、
まず改ページが最優先され、
次に全ての行、列を1ページに合わせるの設定が優先さる?
全ての行、列を1ページに収めるが設定されているとZoomの設定は無視される
そうです

あとあと行数が今より増えた時に、「フォントサイズが小さくなりすぎる」かもしれないので、今一度、Excelのページレイアウトの設定、仕様、挙動を完璧に把握したいなと思いました。
ありがとうございます。
2025/05/18(日) 11:53:43.56ID:JTwWUl1C
ところがね・・・
Windowsの場合は、パソコン側の液晶モニターの設定も印刷に影響するんだよ
プリンターもすべて同じLANにつながってるのを共有してるのに、別のPCから印刷するとズレるんだ・・・
719デフォルトの名無しさん
垢版 |
2025/05/18(日) 11:59:28.20ID:Mk3OrkwO
AIにお伺いして、より沢山の案や方法の回答を得たい時はどの様にご質問していますでしょうか?

私は具体的に〜をするにはどの様な方法がありますか?
と聞いていますが、質問があまりにも具体的すぎるのか、限定的すぎるのか、聞かれた事に対してしか答えてくれません(質問に対して抽象化して幅広く回答したら今度はAIは嘘をつくと言われると思いますが。)
2025/05/18(日) 12:05:26.30ID:9lhlIUdU
左右に並んだセルを連結すると文字の上下位置がずれて発狂するよね
721デフォルトの名無しさん
垢版 |
2025/05/18(日) 12:07:00.00ID:Mk3OrkwO
>>718
それもAIに言われました
スケーリングも影響しますと言われました。
高解像度のモニターで、アイコンのサイズを大きくするために使うあのスケーリングです。
プリンターのフォントや最小の余白サイズなどのプリンターの仕様
プリンターに実は縮尺の設定がかかっている事に気づいていない
などなど
2025/05/18(日) 12:20:35.59ID:Yd8pXRNj
スレチの話題ほど長く続くんだよな
Excelスレでやってくれよ
723デフォルトの名無しさん
垢版 |
2025/05/18(日) 12:24:15.85ID:Mk3OrkwO
公式ページに書いてありましたね。
Zoom プロパティが True の場合、FitToPagesWide プロパティは無視されます。

Zoomプロパティが False の場合、 FitToPagesWide プロパティと FitToPagesTall プロパティは、ワークシートのスケーリング方法を制御します。

(Zoomは)拡大または縮小する方法にかかわらず、元の文書の縦横比は保持されます。
2025/05/18(日) 13:41:54.68ID:v1lfaeE4
スレチとは言えないだろうけど、今のところ個人の感想を書いてるだけに近しいな
仕様に関しては、その書類を共有するグループ内で諮って今後の方針を決めればいいだろうし
環境の違いで発生するトラブルに関しては、最大公約数だっけ?なんかそういう系の
どんな環境でもほぼ同一の結果を出せますゾーンを決めて、それに沿った設計制作に
改めるべきだろうし
PDFに出せば問題軽減するってんならそれもひとつの解決策だし
掛けるコストに見合う結果が出ないなら意義は低い(少ない)
これが、個人研究ってんならより深く追及して解に近いものが得られたら発表してもらいたいが
725デフォルトの名無しさん
垢版 |
2025/05/18(日) 13:47:30.17ID:iKxgrlxH
longとstrの変数定義10個やって、ループ5万回回して中で変数に値を出し入れする

まとめてループ外で変数定義するのと、ループ内で適宜定義するのとどっちがよいので??
2025/05/18(日) 14:08:00.75ID:JTwWUl1C
>>723
保持されないんだな、これが
罫線の太さが一部だけ違ってるシートだと拡大率が縦と横で違ってくる
2025/05/18(日) 14:10:27.89ID:JTwWUl1C
>>725
MSの推奨は最初にまとめて宣言
チームでやるならみんなに合わせる
個人的な作業ならどっちでもいいけど、途中で方針を変えるとあとで混乱するからどっちかに決めて一生変えないこと
728デフォルトの名無しさん
垢版 |
2025/05/18(日) 14:47:49.53ID:qr58bPvk
>>723
この馬鹿、答えを教えてもらってもネチネチやってるのか
馬鹿はこれだから
消えろや
2025/05/18(日) 17:14:14.05ID:9lhlIUdU
>>725
VBAにブロックレベルのスコープはないからどっちも同じ
オレの好みは読みやすさ重視でループ内に書く方だが
プロシージャ内の2つのループで同じ変数名を使いたい時
ループ外で宣言しないといけなくなって打ちひしがれる
730デフォルトの名無しさん
垢版 |
2025/05/18(日) 19:26:33.94ID:NiGvaOOd
真円を印刷したら楕円になって発狂したの思い出したわ
どうやって解決したかは昔すぎて覚えていない
731デフォルトの名無しさん
垢版 |
2025/05/18(日) 21:45:07.54ID:JeO/PtYk
>>727
>>729
参考になります…!
ループ内の宣言コストとかはあんま気にしなくてもよさそうな感じなんですね(オブジェクト除く)
2025/05/19(月) 00:29:53.41ID:aSNuw95p
変数3、4個のプロシージャだったら変数の宣言しなくていいよね?
プロシージャが動いてる時だけメモリ消費するってことでいい?
2025/05/19(月) 00:49:32.05ID:nyMkteHn
>>732
Option Explicit しなさい
しないと、変数のタイプミスで簡単にバグる
2025/05/19(月) 03:01:33.66ID:xZYpAeMM
>>732
たとえ宣言してあっても、メモリ上に変数領域が確保されるのは実行中だけだよ
ただし宣言しないと全部Variant型にされるからメモリ効率も実行効率も悪くなる、と言っても体感はできないけど
735デフォルトの名無しさん
垢版 |
2025/05/19(月) 06:06:52.71ID:WEB+3jSu
>>730
図形の事に全く詳しくないから間違っているかもしれませんが、セルに合わせて伸縮したり、移動したりするのを無効にするのでしょうね
736デフォルトの名無しさん
垢版 |
2025/05/20(火) 02:20:44.35ID:vmioRAc9
ListView,TreeView入れて作ったら、大半の人がOffice2013 64bit使ってて動かないことが判明したんだけど、どうしよう
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況