วันนี้จะมาแนะนำการสร้าง QR CODE ไว้สำหรับใช้งานกันนะครับ ปกติแล้วการสร้าง QR CODE สามารถทำได้อีกวิธีหนึ่งคือ
Create ผ่านหน้าเว็บ แต่เงื่อนไขคือ เครื่องนั้นต้องมี Internet แต่สำหรับเครื่อง User ทั่วไปอาจไม่มี Internet ให้ใช้ เราจึงจะสร้าง QR Code จาก Excel กัน และที่สำคัญมันใช้งานแบบ Offline
สิ่งที่เราต้องมีในเครื่องคือ ตัว ActiveX Controls ใช้สองตัวคือ
1. StrokeScribe.ocx
2. StrokeScribeClass.dll

CODE ที่ใช้นะครบ ตัวแรกเป็นตัว Create QR CODE รับตัวแปรเป็น String นะครับ
Code:
Sub GenQRCode(data As String)Dim wsh As Worksheet
Set wsh = Application.ActiveSheet
   
Dim shp As Shape
For Each shp In wsh.Shapes
  If shp.Type = msoPicture And InStr(shp.Name, "BarcodePicture") > 0 Then
     shp.Delete
  End If
Next
   
 Dim ss As StrokeScribeClass
 Set ss = CreateObject("STROKESCRIBE.StrokeScribeClass.1")
 ss.Alphabet = QRCODE
 row = 1


     If Len(data) = 0 Then Exit Sub
      pict_path = "X:\33.GM\Print QR Code\QR CODE\" + data + ".wmf" 'ผมเก็บรูปไว้ที่นี่
     ss.Text = data
     rc = ss.SavePicture(pict_path, WMF, 500, 500)
End Sub
Code ชุดที่ 2 ใช้ในปุ่มกดนะครับ Concept คือ วน Loop Print ถ้าไม่มี QR CODE จะสั่งให้ Create ใหม่
Code:
Private Sub btnPrint_Click()Range("A7").Activate
Dim row As Integer
row = 7
Do While Range("C" & row).Value <> ""


If Range("A" & row).Value > 0 Then
        Sheet4.Range("J6").Value = Sheet1.Range("C" & row).Value
        Sheet4.Range("J4").Value = Sheet1.Range("E" & row).Value
        Sheet4.Range("O6").Value = Sheet1.Range("F" & row).Value
        Application.ScreenUpdating = False
        If Range("A" & row).Value > 0 Then Call GetImage(row)
        Sheet4.Shapes("QR_Code").Fill.UserPicture "X:\33.GM\Print QR Code\QR CODE\" & Sheet1.Range("C" & row).Value & ".wmf"
        Sheet4.PrintOut 1, 1, Range("A" & row).Value, False
End If
        row = row + 1
Loop
    If Range("G1") = 0 Then
         MsgBox "ไม่พบข้อมูลที่ต้องการ Print กรุณาเลือกข้อมูลก่อนครับ"
          Exit Sub
    End If
End Sub
ตามที่ผมนำมาใช้งานนั้น ผมจะใช้งานกับเครื่อง Print ความร้อนครับ ใช้ Print กับ Sticker ที่เป็นหางหนู ติดที่ตัวชิ้นงานจำพวกอัญมณีครับเพื่อแสดงราคา เพื่อนๆลองนำไปใช้ดูนะครับ อย่าลืม Add Reference ก่อนนะครับ