[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『マクロで入力規則を設定すると起動時に問題が発生する』(おっちょこちょい)
マクロ付きブックに入力規則があるセルがあるのですが、
当初自分で設定していた入力規則を下記コードのようにマクロで設定したところ、
そのブックの起動時に「問題が発生しました。回復しますか?」的なメッセージが出るようになりました。
(メッセージは詳しく覚えていません、すみません)
閉じるときに全ての入力規則を削除し起動時に再設定するように組みなおしたらメッセージは出なくなったのですが、
テストブックで同じように設定してみても問題は発生しませんでした。
このような現象が分かる方はいらっしゃいますでしょうか?
Sub V()
Dim ArrayList() As Variant Dim DropList As String Dim DataCount As Long Dim i As Long
With ThisWorkbook.Worksheets(1) DataCount = .Cells(.Rows.Count, "I").End(xlUp).Row ReDim ArrayList(DataCount - 1)
For i = 1 To DataCount ArrayList(i - 1) = .Cells(i, "I").Value Next i
DropList = Join(ArrayList, ",") With .Cells(1, 1).Validation .Delete .Add Type:=xlValidateList, Formula1:=DropList End With End With
End Sub
< 使用 Excel:Microsoft365、使用 OS:Windows10 >
取り敢えず方法論や無駄かどうかではなく何故エラーのようなものが出るか、についてお聞きしたのですが。
コメントを見るに文字数がオーバーフローしたために起動時にメッセージが出る可能性があるのですかね?
オーバーフローしたら設定コードを実行したその時点でエラーになり操作ものですが。
(おっちょこちょい) 2023/03/01(水) 16:15:48
すみません、ミスタイプです。
(おっちょこちょい) 2023/03/01(水) 16:17:11
こんばんは! 先日、私も入力規則ではないですけど、同じ様なメッセージに遭遇しました。 私の場合は、quit だったんですけど、 その時の感想としてはエクセル的に処理が残ったまま終了した。と感じました。 プロシージャを跨ぐようなコードで次の一行が残っている。とか 要は、処理が完結していないんだと思います。 なので、閉じるときに全て削除して開く時に再設定されたのは正解だと思います。 これだけのコードが書けるのですから思い当たるところはありませんか? (SoulMan) 2023/03/01(水) 22:00:57
Excelのリスト化でファイルが壊れる件
https://how-to-business.com/excel%E3%81%AE%E3%83%AA%E3%82%B9%E3%83%88%E5%8C%96%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8C%E5%A3%8A%E3%82%8C%E3%82%8B%E4%BB%B6/
(agt) 2023/03/01(水) 22:57:20
ご教授、ありがとうございました。
(おっちょこちょい) 2023/03/02(木) 07:45:31
あれっすね、ショートカット(.lnk)のリンク先の文字数制限みたいな感じですね。
VBAからCreateObject("WScript.Shell")でWshShortcutの.Argumentsに設定する分には何文字でも入るけど、 いざ作ったショートカットのプロパティ開いたら、あたかも途中で切れちゃってる様に見えるし、 そのまま[OK]ボタンで閉じようものなら、ホントに途中で切れちゃったりするわで、 最初原因が分からずに苦労した覚えがあります。
なんか状況が似てたんで思い出しちゃいました。
(白茶) 2023/03/02(木) 09:17:10
>文字列にしないでセル参照にすればVBAもいらないじゃん。
質問時に載せたコードはテストコードなので連続した固定の範囲ですが、
実際に使用しているコードは可変かつ連続していない(ところどころリストに入れない)範囲なので
文字列に変換しています。
なのでVBAを使用しなければいちいち変更のたびに範囲を手作業で選択しなおさなければなりません。
また一旦セルを連続する状態に置き換えてフィルタリングしてもよかったのですが、
結局必要なセルを探したりとかのコードが必要となるので、分かりやすく配列にした次第です。
(おっちょこちょい) 2023/03/03(金) 10:16:37
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.