XLOPENエクセルオープン関数

本ページには広告が含まれています。

ExcelまたはOOoのCalcを起動する関数です。第一引数に読み込むファイル名(新規の場合は省略)、第二引数に起動フラグ、第三引数以降にパラメータ(パスワードや読み込み専用)を指定します。

XLOPEN関数を使うとファイルが既に開かれている場合そのファイルのオブジェクトを取得するので、同じファイルが開かれて[読み取り専用]になるのを防ぐことができます。

構文
  1. Excel = XLOPEN( ファイル名, 起動フラグ, パラメータ, パラメータ, … )
引数
ファイル名 (String)省略可
読み込むファイル名、新規の場合は省略
起動フラグ (Boolean = 0,#xlopen = 0)省略可
0(デフォルト)
起動済みのExcelがある場合はそれを、なければ新規にExcelを起動
XL_NEW, True(1)
既にExcelが存在しても 新規にExcelを起動
XL_BOOK(2)
ExcelにてBOOK単位で制御したい場合(BOOKのオブジェクトを返す)
XL_OOOC(3)
OpenOffice.org/LibreOfficeの表計算(Calc)の起動
パラメータ (String)省略可
ファイルオープンに対し追加パラメータがある場合に("password:=1234", "ReadOnly:=True" 等)
Excelのパラメータ
UpdateLinks
リンク更新方法(0:外部参照,リモート参照とも未更新1:外部更新,リモート未更新2:リモート更新,外部未更新3:ともに更新
ReadOnly
読み取り専用で開く場合にTrueを指定
Format
テキストファイル時の区切り文字(1:タブ2:カンマ3:スペース4:セミコロン
Password
パスワード保護されたブックを開くのに必要なパスワード
WriteResPassword
書き込み保護されたブックに書き込むのに必要なパスワード
IgnoreReadOnly
「読み取り専用を推奨する」のダイアログを抑止したい場合にTrueを指定
戻り値
ExcelのCOMオブジェクト
XL_OOOC指定時はOOoのCalcのオブジェクト)

使い方

Excelを起動

起動済みのExcelがあればそれを、なければ新規にExcelを起動します。Excel オブジェクトを戻り値として返します。

UWSC

Excelを起動(新規)

起動済みのExcelの有無に関係なく、Excelを新規で起動します。

UWSC

パスワード保護のかかったブックを開く

パスワード保護のかかったBook1.xlsxを開きます。以下の例ではパスワードは1234です。パスワードが違う場合EXCEL cannot be startedエラーが発生します。

UWSC

LibreOffice Calcを起動

LibreOffice Calcを新規で起動します。起動フラグXL_OOOCを指定している場合は起動済みのCalcを取得することはできず、起動は新規でのみです。

UWSC

LibreOffice Calcで起動(読み取り専用)

パラメータにReadOnly:=Trueを指定してBook1.xlsxをLibreOffice Calcで読み取り専用で起動します。

UWSC

Workbookオブジェクトを取得

起動済み、なければ新規でExcelを起動します。Workbook オブジェクトを取得しブック名を出力します。

UWSC
結果
プレーンテキスト

複数のパラメータを指定

パラメータを複数指定する場合は、第三引数以降にカンマ区切りで指定します。以下は読み取り専用パスワードの2つを指定しています。パラメータは順不同です。

UWSC

Workbooks.Openでの書き換え

XLOPEN関数はUWSCのPro版限定なので、Free版で使用する場合はWorkbooks.Open メソッド (Excel)で書き換えることで同じように使うことができます。

Book1を1234のパスワードを入力して開く。

UWSC
UWSC

Book2を読み取り専用で開く。

UWSC
UWSC

Book3を1234のパスワードを入力して、読み取り専用で開く。

UWSC
UWSC

Free版でXLOPEN関数を使う

XLOPEN関数はPro版でしか使えないのですが、以下のXLOPEN関数を定義すればFree版でも使えるようになります。Pro版でXLOPEN関数が使える状態で以下の関数を定義すると、自分で定義した方の関数が優先的に使用されます。

UWSC

プログラム実行例

気象庁のホームページから一月分の気温を取得しExcelでグラフを作成

UWSC
結果
使用関数

Excelを起動

UWSC
使用関数

LibreOffice Calcを起動

UWSC
使用関数

Excelでセルに値を代入

UWSC
使用関数

セルに配列の値を代入

配列の場合、セル位置は必須。

UWSC
使用関数

指定したシートをアクティブにする

UWSC
使用関数

指定したセルから値を取得します

UWSC
使用関数

楽天銀行定期預金の金利をExcelに保存

UWSC
使用関数

関連記事

XLSETDATA関数 (スクリプト関数)
Excelのセルに値を代入する。
XLSHEET関数 (スクリプト関数)
Excelシートを追加・削除する。
PageSetup オブジェクト
Excel のシートの印刷設定を表すオブジェクトです。シートの用紙サイズ、余白、方向、印刷タイトルなど、印刷に関連する設定を管理するのに使用されます。
Application オブジェクト
Excel全体を表すオブジェクトです。Excel全体に対しての操作、設定変更をしたい場合に使います。
Border オブジェクト
上下左右一つひとつの罫線を表します。
Characters オブジェクト
オブジェクトに含まれる文字列の文字を表します。
Charts オブジェクト
指定されたブックまたは作業中のブックにあるすべてのグラフシートのコレクションです。
Comment オブジェクト
セルに関連付けられたコメントを表します。
FullSeriesCollection オブジェクト
グラフのデータ系列を表すコレクション。
LineFormat オブジェクト
線に関する書式設定。