![]() |
| サイトマップ | |
|
下記は、Excel VBA から SigmaScan Pro を操作するマクロを作成する手順の例です。
<SigmaScan Pro 5 インストールフォルダ>\scan.tlb
<SigmaScan Pro 5 インストールフォルダ>\Macros\Constant.bas
Sub ObtainDataFromSigmaScan() ' SigmaScan の起動 Dim SScan As Object Set SScan = CreateObject("SigmaScan.Application") SScan.Show ' 新規 SigmaScan ワークシートを開く Dim Worksheet As Object Set Worksheet = SScan.NewWorksheet Worksheet.Show Worksheet.MakePermanent ' すべての Measurements 設定をオフに Dim i As Integer For i = 0 To NUMMEASURES - 1 SScan.DoNotCollectMeasurement i Next i ' 面積(Area)計測を A 列に設定 SScan.CollectMeasurement M_AREA, "A" ' 画像の読み込み Dim Shape1 As Object Set Shape1 = SScan.OpenImage(SScan.GetExeFileDirectory() + "images\Shape.bmp") Shape1.MakePermanent ' Overlay 1 で検出するの色範囲の設定 Dim Left0(1) As Long Left0(0) = 0 Dim Right1(1) As Long Right1(0) = 60 Dim ResultCode As Integer ResultCode = Shape1.IntensityThreshold(1, 1, Left0, Right1) ' 計測実行 ResultCode = Shape1.MeasureObjects(1) ' 計測結果を Excel のアクティブシートに転載 Dim ExSheet As Object Set ExSheet = Application.ActiveSheet For i = 1 To Shape1.CountObjects(1) ExSheet.Cells(i, 1) = Worksheet.GetCellText("A", i) Next i End Sub
※コード中の関数の意味などについては、SigmaScan Pro の Help をご参照ください。 ※11 行目および 25 行目(xxx.MakePermanent の行)を両方コメント アウトしておくと、スクリプト終了後に SigmaScan Pro のウィンドウ が閉じられるようになります。 ※このコードはお客様のご参考のために掲載しているもので、ヒューリンクスは、本スクリプト実行によるいかなる問題に対しても責任を負いません。またサポートもいたしません。 |