1

プログラムの 1 つのインスタンスが既に実行されているときに新しいドキュメントを開くと、MS Excel 2010 の一般的な動作を回避できるかどうか疑問に思っていました。基本的に何が起こるかというと、プログラムは現在の環境で新しいスプレッドシートを新しいワークブックとして開きます。

私がやりたいことは、MS Excelの新しいインスタンスで新しいワークブックを開くことをデフォルトとして設定することです(またはキーボードショートカット/マクロで簡単かつ迅速に行う方法を見つけます)。

最終的な目標は、1 つのワークブックを 1 つのモニターに保持し、2 つ目のワークブックを 2 つ目のモニターに移動できるようにすることです (職場で 2 つのモニターを使用しています)。

4

1 に答える 1

3

はい。

これを VBA コードで実行する場合は、次を使用できます。

Sub OpenInNewInstance()
    Dim xlApp As Application
    Set xlApp = CreateObject("Excel.Application")
    xlApp.Workbooks.Add
    xlApp.Visible = True
End Sub

非 VBA ソリューションの場合、Excel の 2 つのインスタンスを開き、各インスタンスのファイル メニューからドキュメントを開くことができます。

Excelの新しいインスタンスですべてのシートを開くためにSuperUserで見つけたこの方法があります

In Excel 2003, go to Tools -> Options -> General tab.

Make sure the option, ‘Ignore other applications’ is checked.

In Excel 2007 & 2010, Click the Office button -> Excel Options -> Advanced.

Under General, check ‘Ignore other applications that use Dynamic Data Exchange’.

https://superuser.com/questions/21602/open-excel-files-in-new-window


または、レジストリを編集することもできます (おそらく最初にバックアップする必要があります)。

strart - run - regedit:

Left column

HKEY_CLASSES_ROOT/Excel.Sheet.8/shell/Open/commend:

Right column {adding (space)"%1"}

Double Click on (Default) and write - "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE" /e "%1"

Right Click on Command – choose "rename" and add something to the name  - for example 2 (commend2).

Left column

HKEY_CLASSES_ROOT/Excel.Sheet.8/shell/Open/ddeexec:

Right Click on the folder ddeexec and choose "rename" and add something to the name  - for example 2 (ddeexec2)

Left column

HKEY_CLASSES_ROOT/Excel.Sheet.12/shell/Open/commend:

Right column {adding (space)"%1"}

Double Click on (Default) and write - "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE" /e "%1"

Right Click on Command – choose "rename" and add something to the name  - for example 2 (commend2).

また、使用している Excel のバージョンによっては、Viewメニューに新しいウィンドウを開くオプションがある場合があります。

ソース

于 2013-11-06T11:18:44.793 に答える