Excelの操作:Excelを起動し、シート内を文字列検索(Find)

VB2008からExcelを操作し文字列検索を行う実行例サンプルです。

Excelの操作へ



■実行画面
「Button1」ボタンで、Excelが起動し検索します。
検索実行フォーム

動作順
1)エクセル起動
2)FindでシートのA列〜Z列の範囲で文字列を検索します。
3)見つかれば、テキストボックスにセル位置を表示します。
 見つからなければ、「見つかりませんでした」とメッセージを表示します。
3)保存せずにブックを閉じます
4)Excelを閉じます。

■実行コード

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim exApp As New Excel.Application
Dim exBook As Excel.Workbook
Dim exSheet As Excel.Worksheet
Dim fText As String
Dim obj As Object

'Excelブックを開く
exBook = exApp.Workbooks.Open("C:\test.xls")
'Excelを表示
exApp.Visible = True
'シートを指定
exSheet = exBook.Worksheets("Sheet1")
'検索文字
fText = "テストb"
'検索
obj = exSheet.Range("A:Z").Find(fText, exSheet.Range("A65536"), Excel.XlFindLookIn.xlValues, _
Excel.XlLookAt.xlWhole, Excel.XlSearchOrder.xlByRows, Excel.XlSearchDirection.xlNext, False)
If Not obj Is Nothing Then
'見つかった位置を表示
Me.TextBox1.Text = obj.address
exBook.Close(False) '保存しない
Else
MsgBox("見つかりませんでした")
exBook.Close(False)
End If

'Excelを閉じる
exApp.Quit()
'終了処理
exSheet = Nothing
exBook = Nothing
exApp = Nothing
obj = Nothing

End Sub
End Class


Visual Basic 2008 Express Edition実践入門