Word
אובייקטי ברקוד עם VBA

 Standard או יותר

שימוש ואוטומציה של ברקודים באמצעות VBA

Word 365, 2024, 2021, 2019, 2016, 2013, 2010, 2007, 2003
ניתן להשתמש ב-VisualBasic for Applications (VBA) כדי לפתור בעיות רבות ב-Word. כאן נראה לכם כיצד להטמיע, להשתמש ולמחוק את בקרת ActiveBarcode באמצעות VBA:

הטמעת בקרת ActiveBarcode במסמך:
בדוגמה זו, בקרת ברקוד תוצב במיקום הסמן. לאחר מכן, תוכל לשנות את האובייקט באמצעות המשתנה ab:
Dim ab As Object
Set ab = Selection.InlineShapes.AddOLEObject(ClassType:="ACTIVEBARCODE.BarcodeCtrl.1",
  FileName:="", LinkToFile:=False, DisplayAsIcon:=False)
הגדר את המאפיינים הסטנדרטיים (גובה, רוחב) של האובייקט באמצעות המשתנה ab:
ab.Width = 200
ab.Height = 120
ניתן לגשת למאפיינים ולשיטות של אובייקט הברקוד באמצעות המאפיין OLEFormat.Object:
ab.OLEFormat.Object.Type = 6
ab.OLEFormat.Object.Text = "987698769812"
ניתן גם להשתמש בשיטה נקייה יותר כדי לגשת למאפיינים על ידי יצירת משתנה ושימוש בו, למשל בשם abObject:
Dim abObject As Object
With ab.OLEFormat
  .Activate
  Set abObject = .Object
End With

abObject.Type = 6
abObject.Text = "987698769812"
באמצעות הקריאה הבאה תוכל להטיל את אובייקט הברקוד ב-InlineShape. שים לב, שלא ניתן לשנות את הברקוד לאחר ההמרה.
ab.ConvertToShape
אם אינך זקוק עוד לשליטה, תוכל למחוק אותה מהמסמך:
 ab.Delete
רמז: אם יש צורך ש-Windows יעבד אירועים עתידיים (המכונים לעתים קרובות KeepWindowsAlive) בתוך מאקרו, ניתן לכפות זאת באמצעות הפונקציה VBA הבאה:
DoEvents
זה יכול להיות הכרחי, למשל, אם ה-Control צריך לצייר את עצמו מחדש.

ActiveBarcode: Info
מאקרו Word (VBA) להוספת ברקודים לדפים.
עבור Word 365, 2024, 2021, 2019, 2016, 2013, 2010
מאקרו זה מראה כיצד להוסיף ברקוד אחד לכל עמוד המכיל תוכן משתנה ומספר עמוד.

השתמש בברקודים במיזוג דואר ב-Word

Word 365, 2024, 2021, 2019, 2016, 2013, 2010, 2007, 2003

1


ActiveBarcode: השתמש בברקודים במיזוג דואר ב-Word.
פתח מסמך מיזוג דואר קיים או צור מסמך חדש.
2


הוסף את אובייקט הברקוד למסמך המיזוג שלך. מקם אותו במקום הרצוי במסמך והגדר את המאפיינים של האובייקט, כגון סוג הברקוד וגודלו.

זה ייראה כמו צילום המסך הבא, לדוגמה. שימו לב לשם אובייקט הברקוד - המודגש כאן בצהוב. בדרך כלל זה יהיה Barcode1. ActiveBarcode: Barcode, Word


3


נדרש מאקרו לצורך מיזוג הדואר. ניתן להוסיף את המאקרו הבא. העתיקו אותו ללוח והדביקו אותו משם לעורך Visual Basic for Applications של Word:
Sub MailMerge_example_with_ActiveBarcode()
 ' Macro shows how to print barcodes in a mail merge.
 if MsgBox("Do you want to print mail merged documents?", vbYesNo, "Question") = vbYes Then
   'counter to zero
   num = 0
   'first record is number one
   ActiveDocument.MailMerge.DataSource.ActiveRecord = 1
   Do
    ' Fill ActiveBarcode text property now
    ActiveDocument.Barcode1.Text = ActiveDocument.MailMerge.DataSource.DataFields("Productcode").Value
    ' do not prompt for printing...
    Options.PrintBackground = True
    ' print page
    ActiveDocument.PrintOut
    ' recognize old record
    lastone = ActiveDocument.MailMerge.DataSource.ActiveRecord
    ' select next record
    ActiveDocument.MailMerge.DataSource.ActiveRecord = wdNextRecord
    'count
    num = num + 1
    ' check if there are new ones
   Loop While ActiveDocument.MailMerge.DataSource.ActiveRecord <> lastone
   ' notify user
   MsgBox (Str(num) + " pages printed!")
 End If
 End Sub

4


התוצאה נראית כך. בצילום המסך ניתן לראות גם היכן הוכנס המאקרו. ActiveBarcode: Barcode, Word


5


כעת התאם את המאקרו למסמך המיזוג הדואר שלך:

אם שם אובייקט הברקוד שלך אינו Barcode1, שנה אותו במאקרו - סימן צהוב משמאל בצילום המסך.

כעת יש לשנות את שם השדה ממקור הנתונים, שישמש עבור הברקוד. בדוגמה זו, נעשה שימוש ב-Productcode - הסימון הצהוב מימין בצילום המסך. יש לשנות את השם בתוך המרכאות. ActiveBarcode: Barcode, Word


6


שמור את המסמך והפעל את המאקרו להדפסת ניסיון.

טיפ: התחל את ההדפסה הניסיונית עם כמות קטנה של נתונים, כך שיהיו פחות טעויות הדפסה במקרה של תקלה. ActiveBarcode: Barcode, Word


7


בוצע.

Info אם שמרת את המאקרו ב-Normal.dot ולא במסמך עצמו, המסמך לא צריך להיות במצב עיצוב כשאתה מפעיל את המאקרו. אם תעשה את זה, תופיע שגיאה. לכן, כבה את מצב העיצוב לפני שתפעיל את המאקרו.