XLSHEET

シートの追加/削除
戻値 = XLSHEET( Excel, Sheet名, [削除フラグ] )
引数
Excel
Excel(またはOOoのCalc)のCOMオブジェクト
Sheet名
追加/削除するシート名
削除フラグ
FALSE: シート追加 (デフォルト)
TRUE: シート削除

※OOoのCalcとは・・・Open Office.org 統合オフィスソフトの表計算ソフトCalcを指しています

戻値
TRUE
正常
FALSE
処理不能

EXCELのシートの追加や削除

この関数はPro版のみ使用可能です。
XLOPENでCOMを生成して、シートを指定して制御が可能になります。

下記のように立ち上げたEXCELファイルにシートを3つ追加、削除してみます。

EXCELシートの追加

EXCELシートを追加した状態

DIM SHEET[2] = "UWSC","KOBA","YASHI"


Excel = XLOPEN(,True) //ファイルオープン

MSGBOX("シートの追加します")

FOR KAISU = 0 TO 2
	SHEETNAME = SHEET[KAISU]
	PRINT SHEETNAME + "追加"
	XLSHEET(Excel,SHEETNAME,FALSE)
	MSGBOX(" OK ")
NEXT

MSGBOX("追加したシートを削除をします")

FOR KAISU = 0 TO 2
	SHEETNAME = SHEET[KAISU]
	PRINT SHEETNAME + "削除"
	XLSHEET(Excel,SHEETNAME,TRUE)
	MSGBOX(" OK ")
NEXT

タグ

2012年10月31日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

DICTATE

DICTATE

音声の取得
戻値 = DICTATE(拾得待ちフラグ)

・引数
  拾得待ちフラグ:
    TRUE: 入力があるまで待つ(デフォルト)
    FALSE: 待たず直近の入力を返す
・戻値
  拾得音声文字

タグ

2012年10月5日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

RECOSTATE

RECOSTATE

音声認識の開始/停止
RECOSTATE(開始フラグ, [単語登録, 単語登録, ...] )

・開始フラグ:
   TRUE・・・音声認識開始
   FALSE・・・音声認識停止
・単語登録・・・認識させたい単語を第2引数以降に記述(配列変数で与える事も可)

タグ

2012年10月3日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

SPEAK

SPEAK

音声合成
SPEAK( 発声文字, [平行処理フラグ, 中断フラグ] )

・発声文字・・・発音させたい文字列
・平行処理フラグ
   FALSE・・・発声終了まで待つ(デフォルト)
   TRUE・・・終了を待たずに平行処理
・中断フラグ
   FALSE・・・発声中の音があれば終了まで待つ(デフォルト)
   TRUE・・・発声中の音がある時はその音は中断する

SPEAK("I was from France")

タグ

2012年10月1日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

XLACTIVATE

Excel シートの選択
戻値 = XLACTIVATE( Excel, Sheet名, [Book名] )
引数
Excel
ExcelのCOMオブジェクト
Sheet名
アクティブにするシート名(順番での指定も可)
Book名
アクティブにするブック名
戻値
TRUE
正常
FALSE
処理不能

EXCELのシートを変更する

この関数はPro版のみ使用可能です。
XLOPENでCOMを生成して、シートを指定して制御が可能になります。

UWSC XLACTIVATE EXCELサンプルファイル

EXCELサンプルファイル

EXCELファイルはこのようなイメージです。
拡大して確認してみてください。
以下のサクリプトで、シートが順次変更していきます。

スクリプト

PATH	= "C:\\TEST.xls"
Excel	= XLOPEN(PATH)
Excel.application.displayalerts = false

MSGBOX("シート名を確認してください<#CR>シートを変更します")

SHEETNAME = "animal"
SS = XLACTIVATE( Excel,SHEETNAME)

IFB SS = 1
	PRINT SHEETNAME
ENDIF

MSGBOX("シート名を確認してください<#CR>シートを変更します")

SHEETNAME = "Sheet1"
SS = XLACTIVATE( Excel,SHEETNAME)

IFB SS = 1
	PRINT SHEETNAME
ENDIF

MSGBOX("シート名を確認してください<#CR>シートを変更します")

SHEETNAME = "Sheet2"
SS = XLACTIVATE( Excel,SHEETNAME)

IFB SS = 1
	PRINT SHEETNAME
ENDIF

MSGBOX("終了します")

タグ

2012年9月15日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

XLCLOSE

Excel終了
戻値 = XLCLOSE( Excel, [ファイル名] )
引数
Excel
ExcelのCOMオブジェクト
ファイル名
保存するファイル名
ファイル名が付いている場合は省略可
TRUE を指定した場合は保存せずに終了
戻値
TRUE
正常
FALSE
処理不能

この関数はPro版のみ利用可能です。
XLOPENと使うことが多いです。
引数によって、保存タイプが異なるので、
サンプルスクリプトで確認してみましょう。

XLCLOSEの引数による違い

PATH = INPUT("ファイルPATHを入力するか、ドラッグアンドドロップしてください")

Excel	= XLOPEN()
Excel.application.displayalerts = false
MSGBOX("[引数ファイルパス,新規]何か変更を加えてください")
XLCLOSE( Excel,PATH)


Excel	= XLOPEN(PATH)
Excel.application.displayalerts = false
MSGBOX("[引数ナシ]何か変更を加えてください")
XLCLOSE( Excel)

Excel	= XLOPEN(PATH)
Excel.application.displayalerts = false
MSGBOX("[引数ファイルパス]何か変更を加えてください")
XLCLOSE( Excel,PATH)


Excel	= XLOPEN(PATH)
Excel.application.displayalerts = false
MSGBOX("[引数TRUE]何か変更を加えてください")
XLCLOSE( Excel,TRUE)

実際にセル値の変更を加えると違いが分かると思います。
引数の違いよりも、displayalertsの方が価値ある情報かもしれないですね。

タグ

2012年9月8日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

XLOPEN

Excelの起動
戻値 = XLOPEN( [ファイル名, 新規フラグ, パラメータ, パラメータ, ...] )
引数
ファイル名
読み込むファイル名 (既に起動済みの場合はそれを)
省略された場合: 起動済みのExcelがある場合はそれを、なければ新規
新規フラグ
TRUE を指定した場合は強制的に新規Excel(別インスタンス)を起動
パラメータ
ファイルオープンに対し追加パラメータがある場合に(”password:=1234″, “ReadOnly:= True” 等)
戻値
ExcelのCOMオブジェクト

この関数はPro版のみ利用可能です。
通常版であれば、COMの操作でEXCELを開くことは可能ですが、
Pro版を利用している方なら、HELP情報が充実しているので、
こちらの方が使い勝手が良いでしょう。

よく使うEXCELファイルをセレクトBOXから開く

////////////////////////初期設定▽▽

XLS1_NAME	= "アクセスデータ"
XLS2_NAME	= "成果計上"
XLS3_NAME	= "商品一覧"
XLS4_NAME	= "売上げ"

XLS1_PATH	= "C:\SAMPLE\アクセスデータ.xls"
XLS2_PATH	= "C:\SAMPLE\成果計上.xls"
XLS3_PATH	= "C:\SAMPLE\商品一覧.xls"
XLS4_PATH	= "C:\SAMPLE\売上げ.xls"

////////////////////////初期設定△△

SELECT SLCTBOX(SLCT_BTN, 0, "EXCEL_OPEN", XLS1_NAME, XLS2_NAME, XLS3_NAME, XLS4_NAME)
	CASE SLCT_1
		PATH	= XLS1_PATH
	CASE SLCT_2
		PATH	= XLS2_PATH
	CASE SLCT_3
		PATH	= XLS3_PATH
	CASE SLCT_4
		PATH	= XLS4_PATH
SELEND

Excel	= XLOPEN(PATH)

ごく単純なサンプルですが、
企画ごとにファイルをまとめて管理したい場合には、
なかなか重宝します。
これをひとつ持ってるだけで、
どんな企画でも使いまわせるので、良かったらご利用ください。

タグ

2012年9月3日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

GETFORMDATA

フォームより値取得
戻値 = GETFORMDATA( Name, [Value])
引数
Name
オブジェクトのName
Value
Nameが共通の場合に Valueを指定する
selectタグにて表示文字ではなく Value値を取得したい場合には FOM_GETVALUE を指定する
戻値
取得の値
(押されたSubmit属性のボタンが指定された場合は一度だけ TRUE(1)を返す)

フォームを使って入力支援をする

sample11のようなWEBフォーム画面へ、
UWSCのフォーム画面(図1)を利用して入力していくスクリプトを作成します。

図1:生成する入力フォーム
UWSC 入力フォーム

考え方は、

UWSCフォーム生成

UWSCフォーム画面から値を取得

ページ指定して、その値を入力する

となります。

スクリプト

// OKBtn ボタンが押されたら各入力値を取得する
ifb CREATEFORM("GETFORMDATA_SCRIPT.html", "GETFORMDATA_SCRIPT", False,, 300, 300, 600, 400) = "OKBtn"
	FRUITS	= GETFORMDATA("Text1")
	ANIMAL	= GETFORMDATA("Radio1")
	SPORTS	= GETFORMDATA("Radio2")
	AGE		= GETFORMDATA("Select1")
else
	print "キャンセル"
endif

IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("http://canal22.org/sample11/")
BusyWait(IE)
IESetData(IE,FRUITS,"fruits")
IESetData(IE,ANIMAL,"animal")
IESetData(IE,SPORTS,"sports")
IESetData(IE,AGE,"age")

print "入力が完了しました"

//------
Procedure BusyWait(ie)
 repeat
	Sleep(0.2)
 until (! ie.busy) and (ie.readyState=4)
Fend

解説

実際に動かした結果は、
下のように(図2)値が入力されるかと思います。

図2:入力結果
GETFORMDATA 入力結果

入力支援に特化するなら、
テキスト入力欄は不要ですが、サンプルになると思い使用しました。

このように入力する項目が限定されている場合などは、
非常に重宝するかと思います。

また、今回は取得データを変数へ格納して、
入力データとして利用しましたが、
取得データをテキストに残すこともスクリプト次第で可能なので、
色々試すとUWSCで出来ることが増えるかと思います。

タグ

2012年8月25日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

CREATEFORM

フォーム画面生成

戻値 = CREATEFORM( HTMLファイル, タイトル, [平行処理フラグ, オプション指定, 幅, 高さ, X, Y] )

引数

HTMLファイル: フォームとして表示するHTMLファイルパス

タイトル: 表示するタイトル

平行処理フラグ

  • FALSE
    Submit属性のボタンが押されるまで処理を返さない (デフォルト)
  • TRUE
    待たない

オプション指定: (複数指定可)

  • FOM_NOICON
    クローズボタンを出さない
  • FOM_MINIMIZE
    最小化ボタンを表示する
  • FOM_MAXIMIZE
    最大化ボタンを表示する
  • FOM_NOHIDE
    Submit属性のボタンが押されても画面を消さない
  • FOM_NOSUBMIT
    Submit属性のボタンが押されても Submitに割り当てられた処理をしない
  • FOM_NORESIZE
    ウィンドウのサイズ変更不可
  • FOM_NOLUNA
    表示をルナ(XP)風にはしない
  • FOM_BROWSER
    ターゲット名解決のため、コントロールを最上位レベルのブラウザとする
  • FOM_NOFLOATEXCEPT
    浮動小数点例外を無効にする

幅, 高さ
サイズ

X, Y
位置
戻値

平行処理フラグ=FALSE: 押されたボタンの Name
平行処理フラグ=TRUE:  フォームの COMオブジェクト

オプションやサイズ、位置を試してみる

HELPにある
CREATEFORM(“TEST.html”, “タイトル”, False, 0, 500, 320)
のサイズ・位置の関係がイマイチ分からないので、
色々なパターンを試して、結果を見せたいと思います。

// OKBtn ボタンが押されたら各入力値を表示する
PATH	= "C:\TESTHTML.html"
TITLE	= "タイトル"
KB	= "構文:"

MSGBOX("フォームのOKボタンを押して進んでください")
//①HELPにあるもののPATHとタイトルを変数化
obj = CREATEFORM(PATH,TITLE,FALSE,0, 500, 320)

//②オプションを指定して、幅、高さ、X、Yを指定
obj = CREATEFORM(PATH,TITLE,FALSE,FOM_MAXIMIZE,0,0, 500, 320)

//③二番目の幅を600に
obj = CREATEFORM(PATH,TITLE,FALSE,FOM_MAXIMIZE,600,0, 500, 320)

//④二番目の高さを600に
obj = CREATEFORM(PATH,TITLE,FALSE,FOM_MAXIMIZE,0,600, 500, 320)

//⑤二番目の幅200、高さ600
obj = CREATEFORM(PATH,TITLE,FALSE,FOM_MAXIMIZE,200,600, 500, 320)

//⑥五番目のXを0、Yを0
obj = CREATEFORM(PATH,TITLE,FALSE,FOM_MAXIMIZE,200,600, 0, 0)

//⑦五番目のXを600、Yを600
obj = CREATEFORM(PATH,TITLE,FALSE,FOM_MAXIMIZE,200,600, 600, 600)

//⑧三番目のオプションを複数指定(最大化ボタンと最小化ボタン)
obj = CREATEFORM(PATH,TITLE,FALSE,FOM_MAXIMIZE OR FOM_MINIMIZE,600,0, 500, 320)
複数のオプションの指定は、OR か + で指定できます。
また、これらの結果からサイズに関しては、0の場合デフォルト値が適用されるようです。

タグ

2012年8月17日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

COMオブジェクト操作関連

COMオブジェクト操作関連関数

COMについては上級者編で解説されております。
関数を使用した具体的なCOMオブジェクトの活用例は上級者編をご参照下さい。

CREATEOLEOBJ

COMオブジェクト生成
戻値 = CREATEOLEOBJ( COMオブジェクト名 )
引数
 COMオブジェクトを指定
戻値
 COMオブジェクト
なお、COMからメソッド使用時に引数に値取得がある場合
引数の変数の前にVarを付記


GETACTIVEOLEOBJ

既に起動中のCOMオブジェクトを取得
戻値 = GETACTIVEOLEOBJ(COMオブジェクト名,[タイトル, 順番])
引数
 COMオブジェクトを指定
 タイトル: 複数時にタイトルで区別(部分一致可)
 なお、Excel、Access、Wordの場合はファイル名を指定
 IE、Office以外では無効
 順番: IEのみ有効、タイトルが同じ時に区別
戻値
 COMオブジェクト


GETOLEITEM

コレクションの取得
戻値 = GETOLEITEM( コレクションプロパティ名)
引数
 コレクションプロパティ名:COMオブジェクトのコレクション取得プロパティ名を指定
戻値
 取得したコレクションの数
 取得したコレクションは配列変数の
 ALL_OLE_ITEM[ ]に配列ゼロから格納


OLEEVENT

イベント処理の定義
OLEEVENT( COMオブジェクト, インタフェース名, イベント名, Procedure名)
引数
 COMオブジェクトを指定
 インタフェース名: ディスパッチインタフェース名
 イベント名
 Procedure名:UWSC側Procedure
 Procedure内にてイベントの引数は配列変数EVENT_PRM[ ]に配列ゼロから格納


COM_ERR_IGN-COM_ERR_RET

COMエラーメッセージの抑止
COM_ERR_IGN
 ・・・COM処理・・・
COM_ERR_RET
COM処理中のエラーはCOM_ERR_FLG にTRUEが設定


SAFEARRAY

SAFEARRAY型の作成
戻値 = SAFEARRAY( [下限, 上限])
引数
 下限: 配列の下限を設定
 上限: 配列の上限を設定
戻値
 作成されたSAFEARRAY型を返す


タグ

2012年8月16日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

このページの先頭へ