Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
freem
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Openai/69509ae0-53e8-8004-aaaa-2f999c8dda20
(section)
Add languages
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== Assistant: かなり関係あります。ただし「MDIだった名残そのもの」というより、いまSDIでも“同一インスタンス(同一プロセス)内のブック群”として設計されている名残、と言ったほうが当たりが近いです。 === かなり関係あります。ただし「MDIだった名残そのもの」というより、いまSDIでも“同一インスタンス(同一プロセス)内のブック群”として設計されている名残、と言ったほうが当たりが近いです。 Excel 2013以降はSDIで、1つのウィンドウに1つのブックが入る見た目になりました(各ウィンドウに専用のリボンも付く)。ただし既定では、新しいブックを開いても同じExcelインスタンス(同じプロセス)内に載ります。Microsoftの説明でも「別ウィンドウだが同じインスタンス」と明言されています。 Microsoft Learn<ref>{{cite web|title=Microsoft Learn|url=https://learn.microsoft.com/ja-jp/office/vba/excel/concepts/programming-for-the-single-document-interface-in-excel|publisher=Microsoft Learn|access-date=2025-12-29}}</ref> そして、その同一インスタンス内では計算や設定などが「グローバル」に共有されるものが残っています(再計算がグローバル、ブック間参照は同じ計算モードを共有、など)。 Microsoft Learn<ref>{{cite web|title=Microsoft Learn|url=https://learn.microsoft.com/en-us/office/vba/excel/concepts/programming-for-the-single-document-interface-in-excel|publisher=Microsoft Learn|access-date=2025-12-29}}</ref> この前提で、挙がってる“キモさ”を仕分けすると: ===== 1) Ctrl+Zが複数ブックに跨る ===== これはMDI/SDIというより「1セッション=1つのUndoスタック」設計の結果で、今も「仕様(by design)」扱いです。 Microsoft Learn<ref>{{cite web|title=Microsoft Learn|url=https://learn.microsoft.com/en-us/answers/questions/5556067/why-is-undo-redo-moving-between-multiple-excel-wor|publisher=Microsoft Learn|access-date=2025-12-29}}</ref> SDIになっても「同じインスタンスで複数ブックを扱う」限り、Undoをブック単位に分けてないので跨ります。 ===== 2) 同じ名前のブックを開けない ===== これも「同一インスタンス内のWorkbooksコレクション(や内部識別)の都合」が濃厚で、Microsoftの回答でも'''“同名ブックは同時に開けない→別インスタンスで開け”'''という回避策になっています。 Microsoft Learn<ref>{{cite web|title=Microsoft Learn|url=https://learn.microsoft.com/en-us/answers/questions/5168892/excel-cant-open-two-workbooks-with-same-name-at-th|publisher=Microsoft Learn|access-date=2025-12-29}}</ref> (ここはOSのMDI/SDIというより、Excel側の“インスタンス内一意”制約っぽい。) ===== 3) 新たにブック開いたら前のブックが出しゃばって来る ===== これは体感的には「同一インスタンスのUIスレッド/アクティブブックの切替イベントが強い」系で、SDIになっても“インスタンス内のアクティブ管理”が残ってるせいで起きがちです。MDIの見た目が消えても、内部の「アプリ主導でアクティブを握る」癖は残ります。 ===== 4) コピーしたあと何かをdeleteしたら、手に持ってたはずのコピーが消える ===== これはExcelの'''Cut/Copyモード(いわゆる“marching ants”)'''が、特定の操作で解除される仕様にかなり近いです。実際「だいたい何をしても(編集モードに入る等で)クリップボード内容ごと消える」趣旨の説明がMicrosoft Q&Aでもされています。 Microsoft Learn<ref>{{cite web|title=Microsoft Learn|url=https://learn.microsoft.com/en-us/answers/questions/4906904/excel-2016-for-mac-how-to-get-rid-of-marching-ants|publisher=Microsoft Learn|access-date=2025-12-29}}</ref> SDI/MDIというより、Excelのコピー実装(内部クリップボード+モード)問題。 ===== 5) ファイル選択ダイアログを開いたら、他のブックも操作できなくなる ===== これはアプリケーション・モーダル(そのExcelインスタンスを止める)だからです。 SDIは「ウィンドウが分かれた」だけで、同一インスタンスならダイアログはインスタンス全体をロックしがち。 ===== 6) セル編集中は新しいブックを開こうとしても阻害される ===== これもExcelの'''セル編集が“別モード”(モーダル状態)'''だからで、編集確定/キャンセルを優先して他コマンドを抑止します。MDI/SDIとは独立の話。 ==== じゃあ「昔MDIだったこと」とどこが繋がる? ==== 繋がるポイントはこうです: * '''SDI化は“ウィンドウ管理の変更”'''であって、 * “同一インスタンス内で複数ブックを一括管理する思想”は残った(Undo・計算・アクティブ管理・モーダルUIなどがインスタンス単位) Microsoft Learn<ref>{{cite web|title=Microsoft Learn|url=https://learn.microsoft.com/ja-jp/office/vba/excel/concepts/programming-for-the-single-document-interface-in-excel|publisher=Microsoft Learn|access-date=2025-12-29}}</ref> つまり、MDIの頃に自然だった「アプリが全部まとめて面倒を見る」設計が、SDIでもかなり温存されてて、その摩擦が“キモさ”として出てる感じです。 ==== いちばん効く回避策(思想レベル) ==== 「別ウィンドウ」に見えても同じインスタンスなので、本当に分離したいなら“別インスタンス(別プロセス)”で開くのが効きます。Microsoft公式でも excel.exe /x で新プロセス起動できると書いてあります。 Microsoft Learn<ref>{{cite web|title=Microsoft Learn|url=https://learn.microsoft.com/ja-jp/office/vba/excel/concepts/programming-for-the-single-document-interface-in-excel|publisher=Microsoft Learn|access-date=2025-12-29}}</ref> これをやると、少なくとも Undoの跨り と モーダルダイアログの巻き込み は“別インスタンス側”には波及しません(逆に言うと、同一インスタンスに載せてる限り治らない)。 必要なら、あなたの環境(Windows/Mac、Excelの版)前提で「普段の開き方を極力ラクにしたまま、必要時だけ別インスタンスで開く運用」を具体例つきで組みます。
Summary:
Please note that all contributions to freem are considered to be released under the Creative Commons Attribution-ShareAlike 4.0 (see
Freem:Copyrights
for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)