クラス

ControlParameter

コントロール設定を格納します。

メンバ名 説明 既定値
Double Timeout タイムアウト時間 (1~9999秒) 5
Double Wait 送信前ウェイト (0~9999秒) 0
Int32 RepeatNum 繰り返し回数 (0~9999回) 1

OptionParameter

オプション設定を格納します。

メンバ名 説明 既定値
Boolean SendCheck コマンド送信前に確認 (true:確認する, false:確認しない) false
Boolean NotOverWriteMsg 上書き確認メッセージを出さない (true:出さない, false:出す) false
Boolean NotEndMsg 終了メッセージを出さない (true:出さない, false:出す) false
Boolean TimeLog 日時を出力 (true:出力する, false:出力しない) false
Boolean CommTimeLog 通信時間を出力 (true:出力する, false:出力しない) false
Boolean OverWrite 繰り返し時に同じセルに出力 (true:出力する, false:出力しない) false
Boolean SeparateComma コンマとセミコロンで分割 (true:分割する, false:分割しない) false
String ExponentFormat 指数表示フォーマット "###.0#########E+00"
String LineAccessToken LINEアクセストークン ""
String ContecDigitalIoDeviceName CONTECデジタル入出力デバイス名 ""

InterfaceParameter

インターフェイス設定を格納します。

メンバ名 説明 既定値
Int32 InterfaceType インターフェイス (0:未使用, 1:RS-232C/USB, 2:LAN, 3:GPIB(NI), 4:GPIB(CONTEC), 5:VISA) 0
Int32 Terminator 送信ターミネーター (0:None, 1:CR+LF, 2:CR, 3:LF) 1
Int32 Charset 文字コード (0:ASCII, 1:UTF-8, 2:Shift-JIS) 0
String RsComPort RS-232C/USB COM ポート ""
Int32 RsSpeed RS-232C/USB スピード (4800, 9600, 14400, 19200, 38400, 57600, 115200) 9600
Int32 RsData RS-232C/USB データ (0:7bit, 1:8bit) 1
Int32 RsParity RS-232C/USB パリティ (0:None, 1:Odd, 2:Even) 0
Int32 RsStopBits RS-232C/USB ストップビット (0:1bit, 1:2bit) 0
Boolean RsFlowXon RS-232C/USB フロー制御 Xon/Xoff (true:オン, false:オフ) false
Boolean RsFlowRts RS-232C/USB フロー制御 RTS/CTS (true:オン, false:オフ) true
Boolean RsFlowDsr RS-232C/USB フロー制御 DSR/DTR (true:オン, false:オフ) true
String LanIp LAN IPアドレス "192.168.1.1"
Int32 LanPort LAN ポート番号 6866
Int32 GpibNiBoardId GPIB(NI) ボードID (0~99) 0
Int32 GpibNiAddress GPIB(NI) 機器アドレス (0~30) 1
Boolean GpibNiDcl GPIB(NI) 接続時にデバイスクリアする (true:クリアする, false:クリアしない) true
Boolean GpibNiEoi GPIB(NI) EOIを使用する (true:使用する, false:使用しない) true
Int32 GpibContecBoardId GPIB(CONTEC) ドライバNo. (1~4) 1
Int32 GpibContecAddress GPIB(CONTEC) 機器アドレス (0~30) 1
Boolean GpibContecDcl GPIB(CONTEC) 接続時にデバイスクリアする (true:クリアする, false:クリアしない) true
Boolean GpibContecEoi GPIB(CONTEC) EOIを使用する (true:使用する, false:使用しない) true
String VisaAddress VISA アドレス ""
Boolean VisaEom VISA EOMを使用する (true:使用する, false:使用しない) false

SequenceMakerParameter

Sequence Makerの全ての設定を格納します。

メンバ名 説明
ControlParameter ControlParameter コントロール設定
OptionParameter OptionParameter オプション設定
InterfaceParameter[12] InterfaceParameter インターフェイス設定

注記

VBAからInterfaceParameterの配列を直接アクセスすることはできません。
SequenceMakerParameter.GetInterfaceParameter()メソッドで取得した参照を経由してアクセスします。
メソッドの引数は配列のインデックス(0~11)です。

BinaryData

バイナリメッセージを格納します。

メンバ名 説明 既定値
Byte[] Data データ null
Int32 Length データ長 0

メソッド

Start

送受信を開始する

構文

Int32 Start();

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim result As Long

    result = automationObject.Start()
    If result <> 0 Then
        Exit Sub
    End If

注記

Sequence Makerリボンのコマンド送受信ボタンのクリックと同じ機能です。
送受信が完了するまでメソッドから戻りません。

Stop

送受信を停止する

Int32 Stop();

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim result As Long

    result = automationObject.Stop()
    If result <> 0 Then
        Exit Sub
    End If

注記

Sequence Makerリボンの停止ボタンのクリックと同じ機能です。
Start()メソッドは送受信が完了するまでメソッドから戻りませんので、リボンのコマンド送受信ボタンで送受信を開始した時に使用します。

GetStatus

送受信の状態を返す

構文

Int32 GetStatus();

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim result As Long

    result = automationObject.GetStatus()

GetControlSetting

コントロール設定の取得

構文

Int32 GetControlSetting(ref ControlParameter controlSetting);

引数

controlSetting

コントロール設定

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim controlSetting As Variant
    Set controlSetting = automationObject.CreateControlParameter()
    Dim result As Long

    result = automationObject.GetControlSetting(controlSetting)
    If result <> 0 Then
        Exit Sub
    End If

注記

コントロール設定引数にはCreateControlParameter()メソッドで作成したインスタンスを指定します。

SetControlSetting

コントロール設定の設定

構文

Int32 SetControlSetting(ControlParameter controlSetting);

引数

controlSetting

コントロール設定

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim controlSetting As Variant
    Set controlSetting = automationObject.CreateControlParameter()
    Dim result As Long

    controlSetting.Timeout = 5#
    result = automationObject.SetControlSetting(controlSetting)
    If result <> 0 Then
        Exit Sub
    End If

注記

コントロール設定引数にはCreateControlParameter()メソッドで作成したインスタンスを指定します。

GetOptionSetting

オプション設定の取得

構文

Int32 GetOptionSetting(ref OptionParameter optionSetting);

引数

optionSetting

オプション設定

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim optionSetting As Variant
    Set optionSetting = automationObject.CreateOptionParameter()
    Dim result As Long

    result = automationObject.GetOptionSetting(optionSetting)
    If result <> 0 Then
        Exit Sub
    End If

注記

オプション設定引数にはCreateOptionParameter()メソッドで作成したインスタンスを指定します。

SetOptionSetting

オプション設定の設定

構文

Int32 SetOptionSetting(OptionParameter optionSetting);

引数

optionSetting

オプション設定

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim optionSetting As Variant
    Set optionSetting = automationObject.CreateOptionParameter()
    Dim result As Long

    optionSetting.SendCheck = False
    result = automationObject.SetOptionSetting(optionSetting)
    If result <> 0 Then
        Exit Sub
    End If

注記

オプション設定引数にはCreateOptionParameter()メソッドで作成したインスタンスを指定します。

GetInterfaceSetting

インターフェイス設定の取得

構文

Int32 GetInterfaceSetting(ref InterfaceParameter interfaceSetting, Int32 interfaceNo);

引数

interfaceSetting

インターフェイス設定

interfaceNo

インターフェイスNo.(1~12)

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim interfaceSetting As Variant
    Set interfaceSetting = automationObject.CreateInterfaceParameter()
    Dim result As Long

    result = automationObject.GetInterfaceSetting(interfaceSetting, 1)
    If result <> 0 Then
        Exit Sub
    End If

注記

インターフェイス設定引数にはCreateInterfaceParameter()メソッドで作成したインスタンスを指定します。

SetInterfaceSetting

インターフェイス設定の設定

構文

Int32 SetInterfaceSetting(InterfaceParameter interfaceSetting, Int32 interfaceNo);

引数

interfaceSetting

インターフェイス設定

interfaceNo

インターフェイスNo.(1~12)

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim interfaceSetting As Variant
    Set interfaceSetting = automationObject.CreateInterfaceParameter()
    Dim result As Long

    interfaceSetting.InterfaceType = 1
    result = automationObject.SetInterfaceSetting(interfaceSetting, 1)
    If result <> 0 Then
        Exit Sub
    End If

注記

インターフェイス設定引数にはCreateInterfaceParameter()メソッドで作成したインスタンスを指定します。

GetSequenceMakerSetting

Sequence Maker設定の取得

構文

Int32 GetSequenceMakerSetting(ref SequenceMakerParameter sequenceMakerSetting);

引数

sequenceMakerSetting

Sequence Maker設定

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim sequenceMakerSetting As Variant
    Set sequenceMakerSetting = automationObject.CreateSequenceMakerParameter()
    Dim result As Long

    result = automationObject.GetSequenceMakerSetting(sequenceMakerSetting)
    If result <> 0 Then
        Exit Sub
    End If

注記

Sequence Maker設定引数にはCreateSequenceMakerParameter()メソッドで作成したインスタンスを指定します。

SetSequenceMakerSetting

Sequence Maker設定の設定

構文

Int32 SetSequenceMakerSetting(SequenceMakerParameter sequenceMakerSetting);

引数

sequenceMakerSetting

Sequence Maker設定

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim sequenceMakerSetting As Variant
    Set sequenceMakerSetting = automationObject.CreateSequenceMakerParameter()
    Dim interfaceSetting As Variant
    Dim result As Long

    sequenceMakerSetting.ControlParameter.Timeout = 5#
    sequenceMakerSetting.OptionParameter.SendCheck = False
    Set interfaceSetting = sequenceMakerSetting.GetInterfaceParameter(0)
    interfaceSetting.InterfaceType = 1
    result = automationObject.SetSequenceMakerSetting(sequenceMakerSetting)
    If result <> 0 Then
        Exit Sub
    End If

注記

Sequence Maker設定引数にはCreateSequenceMakerParameter()メソッドで作成したインスタンスを指定します。

ReadSequenceMakerSetting

Sequence Maker設定のファイルからの読み込み

構文

Int32 ReadSequenceMakerSetting(ref SequenceMakerParameter sequenceMakerSetting,
    String pathname);

引数

sequenceMakerSetting

Sequence Maker設定

pathname

設定ファイル名

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim sequenceMakerSetting As Variant
    Set sequenceMakerSetting = automationObject.CreateSequenceMakerParameter()
    Dim result As Long

    result = automationObject.ReadSequenceMakerSetting(sequenceMakerSetting, "SequenceMaker.xml")
    If result <> 0 Then
        Exit Sub
    End If

注記

Sequence Maker設定引数にはCreateSequenceMakerParameter()メソッドで作成したインスタンスを指定します。

WriteSequenceMakerSetting

Sequence Maker設定のファイルへの保存

構文

Int32 WriteSequenceMakerSetting(SequenceMakerParameter sequenceMakerSetting,
    String pathname);

引数

sequenceMakerSetting

Sequence Maker設定

pathname

設定ファイル名

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim sequenceMakerSetting As Variant
    Set sequenceMakerSetting = automationObject.CreateSequenceMakerParameter()
    Dim result As Long

    result = automationObject.WriteSequenceMakerSetting(sequenceMakerSetting, "SequenceMaker.xml")
    If result <> 0 Then
        Exit Sub
    End If

注記

Sequence Maker設定引数にはCreateSequenceMakerParameter()メソッドで作成したインスタンスを指定します。

CreateControlParameter

ControlParameterのインスタンスの作成

構文

ControlParameter CreateControlParameter();

戻り値

ControlParameter

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim controlSetting As Variant
    Set controlSetting = automationObject.CreateControlParameter()

CreateOptionParameter

OptionParameterのインスタンスの作成

構文

OptionParameter CreateOptionParameter();

戻り値

OptionParameter

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim optionSetting As Variant
    Set optionSetting = automationObject.CreateOptionParameter()

CreateInterfaceParameter

InterfaceParameterのインスタンスの作成

構文

InterfaceParameter CreateInterfaceParameter();

戻り値

InterfaceParameter

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim interfaceSetting As Variant
    Set interfaceSetting = automationObject.CreateInterfaceParameter()

CreateSequenceMakerParameter

SequenceMakerParameterのインスタンスの作成

構文

SequenceMakerParameter CreateSequenceMakerParameter();

戻り値

SequenceMakerParameter

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim sequenceMakerSetting As Variant
    Set sequenceMakerSetting = automationObject.CreateSequenceMakerParameter()

CreateBinaryData

BinaryDataのインスタンスの作成

構文

BinaryData CreateBinaryData();

戻り値

BinaryData

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim binaryData As Variant
    Set binaryData = automationObject.CreateBinaryData()

InterfaceOpen

インターフェイスのオープン

構文

Int32 InterfaceOpen(Int32 interfaceNo);

引数

interfaceNo

インターフェイスNo.(1~12)

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim result As Long

    result = automationObject.InterfaceOpen(1)
    If result <> 0 Then
        Exit Sub
    End If

InterfaceClose

インターフェイスのクローズ

構文

Int32 InterfaceClose(Int32 interfaceNo);

引数

interfaceNo

インターフェイスNo.(1~12)

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim result As Long

    result = automationObject.InterfaceOpen(1)
    If result <> 0 Then
        Exit Sub
    End If

    result = automationObject.InterfaceClose(1)
    If result <> 0 Then
        Exit Sub
    End If

SendMessage

メッセージの送信

構文

Int32 SendMessage(Int32 interfaceNo, String sendMessage);

引数

interfaceNo

インターフェイスNo.(1~12)

sendMessage

送信メッセージ

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim result As Long

    result = automationObject.InterfaceOpen(1)
    If result <> 0 Then
        Exit Sub
    End If

    result = automationObject.SendMessage(1, "*TRG")
    If result <> 0 Then
        Call automationObject.InterfaceClose(1)
        Exit Sub
    End If

    result = automationObject.InterfaceClose(1)
    If result <> 0 Then
        Exit Sub
    End If

ReceiveMessage

メッセージの受信

構文

Int32 ReceiveMessage(Int32 interfaceNo, ref String receiveMessage, Double timeout);

引数

interfaceNo

インターフェイスNo.(1~12)

receiveMessage

受信メッセージ

timeout

タイムアウト時間(1~9999 秒)

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim receiveMessage As String
    Dim result As Long

    result = automationObject.InterfaceOpen(1)
    If result <> 0 Then
        Exit Sub
    End If

    result = automationObject.ReceiveMessage(1, receiveMessage, 5#)
    If result <> 0 Then
        Call automationObject.InterfaceClose(1)
        Exit Sub
    End If

    result = automationObject.InterfaceClose(1)
    If result <> 0 Then
        Exit Sub
    End If

SendReceiveMessage

メッセージの送受信

構文

Int32 SendReceiveMessage(Int32 interfaceNo, String sendMessage,
    ref String receiveMessage, Double timeout);

引数

interfaceNo

インターフェイスNo.(1~12)

sendMessage

送信メッセージ

receiveMessage

受信メッセージ

timeout

タイムアウト時間(1~9999 秒)

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim receiveMessage As String
    Dim result As Long

    result = automationObject.InterfaceOpen(1)
    If result <> 0 Then
        Exit Sub
    End If

    result = automationObject.SendReceiveMessage(1, ":MEASure?", receiveMessage, 5#)
    If result <> 0 Then
        Call automationObject.InterfaceClose(1)
        Exit Sub
    End If

    result = automationObject.InterfaceClose(1)
    If result <> 0 Then
        Exit Sub
    End If

SendReceiveIeeeBinary

バイナリ応答のメッセージの送受信

構文

Int32 SendReceiveIeeeBinary(Int32 interfaceNo, String sendMessage,
    ref BinaryData receiveMessage, Double timeout);

引数

interfaceNo

インターフェイスNo.(1~12)

sendMessage

送信メッセージ

receiveMessage

受信メッセージ

timeout

タイムアウト時間(1~9999 秒)

戻り値

結果コード

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim receiveMessage As Variant
    Set receiveMessage = automationObject.CreateBinaryData()
    Dim result As Long

    result = automationObject.InterfaceOpen(1)
    If result <> 0 Then
        Exit Sub
    End If

    result = automationObject.SendReceiveIeeeBinary(1, ":HCOPy:DATA? COLor", receiveMessage, 10#)
    If result <> 0 Then
        Call automationObject.InterfaceClose(1)
        Exit Sub
    End If

    result = automationObject.InterfaceClose(1)
    If result <> 0 Then
        Exit Sub
    End If

注記

受信メッセージ引数にはCreateBinaryData()メソッドで作成したインスタンスを指定します。

GetComPortName

COMポート名の取得

構文

String[] GetComPortName();

戻り値

COMポート名

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim comPortName() As String
    comPortName = automationObject.GetComPortName()

GetVisaAddress

VISAアドレスの取得

構文

String[] GetVisaAddress();

戻り値

VISAアドレス

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim visaAddress() As String
    visaAddress = automationObject.GetVisaAddress()

GetVersion

Sequence Makerのバージョン番号の取得

構文

String GetVersion();

戻り値

バージョン番号

    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("Sequence Maker").Object
    Dim version As String
    version = automationObject.GetVersion()

付録

結果コード

説明
0 成功
1 送受信中
2 停止中
3 引数の型が違う
4 インターフェイスNo.が範囲外
5 インターフェイスがオープン状態
6 インターフェイスがクローズ状態
7 ドライバが未インストール
8 ドライバのバージョンが古い
9 インターフェイスが未選択
10 インターフェイスオープン失敗
11 タイムアウト時間が範囲外
12 送受信失敗
13 ファイルが存在しない
14 ファイルアクセス失敗

Sequence Maker COMアドインオブジェクトの取得方法

アドイン名

Sequence Maker

手順

    Dim addIn As COMAddIn
    Dim automationObject As Object
    Set addIn = Application.COMAddIns("Sequence Maker")
    Set automationObject = addIn.Object