コード全文
Imports GrapeCity.Win.BarCode Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim xl As New Microsoft.Office.Interop.Excel.Application() 'xl.Visible = True read_data(xl) print_barcode(xl) xl.ActiveWorkbook.Save() xl.ActiveWorkbook.Close() xl.Quit() End Sub Private icount As Integer = 0 Sub read_data(ByVal xl As Microsoft.Office.Interop.Excel.Application) Dim fname As String Dim imgBarcode1 As Image Dim i As Integer = 2 Dim data As String xl.Workbooks.Open("C:\barcode\バーコードデータ.xls") With xl.ActiveWorkbook.Worksheets("Sheet1") While .cells(i, 1).value <> "" icount += 1 data = .cells(i, 1).value & .cells(i, 2).value & .cells(i, 3).value With GcBarCode1 .Type = GrapeCity.Win.BarCode.ValueType.BarType.Code39 .Value = data End With imgBarcode1 = GcBarCode1.CreateBitmap(120) fname = "C:\barcode\BarCode" & icount & ".bmp" imgBarcode1.Save(fname, System.Drawing.Imaging.ImageFormat.Bmp) i += 1 End While MessageBox.Show("バーコード" & icount & "個を作成しました。", "完了") End With End Sub Sub print_barcode(ByVal xl As Microsoft.Office.Interop.Excel.Application) Dim i As Integer With xl.ActiveWorkbook.Worksheets("Sheet2") .Activate() .range("A1").Select() For i = 1 To 10 'icount .Pictures.Insert("C:\barcode\BarCode" & i & ".bmp").select() xl.Application.Selection.ShapeRange.IncrementTop(60 * (i - 1)) Next '.Printout() MessageBox.Show("バーコードを印刷しました。", "完了") End With End Sub End Class
まとめ
前回のフォームからバーコード番号を作成するアプリケーションと、今回のExcelのワークシートからバーコードを作成するアプリケーションの、2つのタイプのアプリケーションを作ってみました。バーコードで管理しようとする物は、たいてい量が多いものですから、バーコード作成を自動化する場合も結構あるのではないかと思います。
今回は、簡単なサンプルでバーコード作成を自動化しましたが、実際に利用しようとする現場では、もう少し大がかりな処理を組み立てることになるのではないでしょうか。いずれにしても、GcBarCodeコンポーネントはバーコード作成アプリケーションの開発に大きな威力を発揮してくれると思います。