أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

كيف لجعل Microsoft Word تنفيذ دمج المراسلات من Visual Basic

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية220607
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
الموجز
توضح هذه المقالة كيفية استخدام Microsoft Word لإنشاء مستند دمج المراسلات باستخدام التنفيذ من Microsoft Visual Basic.
معلومات أخرى
هناك طريقتان للتحكم في ملقم أتمتة: باستخدام الربط المتأخر أو باستخدام الربط المبكر. مع الربط المتأخر غير مرتبطة أساليب حتى وقت التشغيل ثم يتم التصريح عن ملقم الأتمتة كـ كائن. مع الربط المبكر التطبيق الخاص بك يعرف وقت التصميم الدقيق نوع الكائن سوف يكون الاتصال مع يمكن تعريف الكائنات له كنوع معينة. يستخدم هذا النموذج الربط المبكر تعتبر أفضل في معظم الحالات لأن affords أمان نوع أفضل وأداء أكبر.

الربط المبكر إلى ملقم أتمتة لديك لتعيين مرجع إلى مكتبة النوع ذلك الملقم. في Visual Basic، يتم ذلك خلال مربع الحوار مراجع. لفتح مربع الحوار مراجع انقر "مراجع" في القائمة المشروع. للحصول على هذه العينة يجب عليك إضافة مرجع إلى مكتبة النوع Word قبل أن تتمكن من تشغيل التعليمات البرمجية.

إنشاء نموذج التنفيذ

  1. قم بتشغيل Visual Basic ثم إنشاء مشروع EXE قياسي جديد. يتم إنشاء Form1 بشكل افتراضي.
  2. إضافة عنصر تحكم CommandButton إلى Form1.
  3. من القائمة المشروع انقر "مراجع لفتح مربع الحوار" مراجع ".
  4. حدد مكتبة كائنات Microsoft Word 11.0 لإنشاء مرجع إلى مكتبة النوع Microsoft Office Word 2003. لـ Word 2002 حدد كائن 10.0 Microsoft Word مكتبة. لـ Word 2000 حدد كائن 9.0 Microsoft Word مكتبة. حدد مكتبة كائنات Microsoft Word 8.0 Word 97.
  5. انقر فوق موافق لإغلاق مربع الحوار مراجع.
  6. في إطار التعليمات البرمجية لـ Form1 بإضافة التعليمة البرمجية التالية:
    Option ExplicitDim wrdApp As Word.ApplicationDim wrdDoc As Word.DocumentPrivate Sub Command1_Click()  Dim wrdSelection As Word.Selection  Dim wrdMailMerge As Word.MailMerge  Dim wrdMergeFields As Word.MailMergeFields  Dim StrToAdd As String  ' Create an instance of Word, and make it visible.  Set wrdApp = CreateObject("Word.Application")  wrdApp.Visible = True  ' Add a new document.  Set wrdDoc = wrdApp.Documents.Add  wrdDoc.Select    Set wrdSelection = wrdApp.Selection  Set wrdMailMerge = wrdDoc.MailMerge  ' Create the MailMerge Data file.  CreateMailMergeDataFile  ' Create a string, and insert it into the document.  StrToAdd = "State University" & vbCr & _           "Electrical Engineering Department"  wrdSelection.ParagraphFormat.Alignment = wdAlignParagraphCenter  wrdSelection.TypeText StrToAdd     InsertLines 4   ' Insert merge data.  wrdSelection.ParagraphFormat.Alignment = wdAlignParagraphLeft  Set wrdMergeFields = wrdMailMerge.Fields  wrdMergeFields.Add wrdSelection.Range, "FirstName"  wrdSelection.TypeText " "  wrdMergeFields.Add wrdSelection.Range, "LastName"  wrdSelection.TypeParagraph  wrdMergeFields.Add wrdSelection.Range, "Address"  wrdSelection.TypeParagraph  wrdMergeFields.Add wrdSelection.Range, "CityStateZip"      InsertLines 2  ' Right align the line, and insert a date field' with the current date.  wrdSelection.ParagraphFormat.Alignment = _        wdAlignParagraphRight  wrdSelection.InsertDateTime _        DateTimeFormat:="dddd, MMMM dd, yyyy", _        InsertAsField:=False          InsertLines 2  ' Align the rest of the document.  wrdSelection.ParagraphFormat.Alignment = _        wdAlignParagraphJustify    wrdSelection.TypeText "Dear "  wrdMergeFields.Add wrdSelection.Range, "FirstName"  wrdSelection.TypeText ","  InsertLines 2    ' Create a string, and insert it into the document.  StrToAdd = "Thank you for your recent request for next " & _      "semester's class schedule for the Electrical " & _      "Engineering Department. Enclosed with this " & _      "letter is a booklet containing all the classes " & _      "offered next semester at State University.  " & _      "Several new classes will be offered in the " & _      "Electrical Engineering Department next semester.  " & _      "These classes are listed below."  wrdSelection.TypeText StrToAdd    InsertLines 2    ' Insert a new table with 9 rows and 4 columns.  wrdDoc.Tables.Add wrdSelection.Range, NumRows:=9, _       NumColumns:=4  With wrdDoc.Tables(1)    ' Set the column widths    .Columns(1).SetWidth 51, wdAdjustNone    .Columns(2).SetWidth 170, wdAdjustNone    .Columns(3).SetWidth 100, wdAdjustNone    .Columns(4).SetWidth 111, wdAdjustNone    ' Set the shading on the first row to light gray.    .Rows(1).Cells.Shading.BackgroundPatternColorIndex = _       wdGray25    ' Format the first row in bold.    .Rows(1).Range.Bold = True    ' Center the text in Cell (1,1).    .Cell(1, 1).Range.Paragraphs.Alignment = wdAlignParagraphCenter        ' Fill each row of the table with data.    FillRow wrdDoc, 1, "Class Number", "Class Name", "Class Time", _       "Instructor"    FillRow wrdDoc, 2, "EE220", "Introduction to Electronics II", _       "1:00-2:00 M,W,F", "Dr. Jensen"    FillRow wrdDoc, 3, "EE230", "Electromagnetic Field Theory I", _       "10:00-11:30 T,T", "Dr. Crump"    FillRow wrdDoc, 4, "EE300", "Feedback Control Systems", _       "9:00-10:00 M,W,F", "Dr. Murdy"    FillRow wrdDoc, 5, "EE325", "Advanced Digital Design", _       "9:00-10:30 T,T", "Dr. Alley"    FillRow wrdDoc, 6, "EE350", "Advanced Communication Systems", _       "9:00-10:30 T,T", "Dr. Taylor"    FillRow wrdDoc, 7, "EE400", "Advanced Microwave Theory", _       "1:00-2:30 T,T", "Dr. Lee"    FillRow wrdDoc, 8, "EE450", "Plasma Theory", _       "1:00-2:00 M,W,F", "Dr. Davis"    FillRow wrdDoc, 9, "EE500", "Principles of VLSI Design", _       "3:00-4:00 M,W,F", "Dr. Ellison"  End With    ' Go to the end of the document.  wrdApp.Selection.GoTo wdGoToLine, wdGoToLast  InsertLines 2    ' Create a string, and insert it into the document.  StrToAdd = "For additional information regarding the " & _             "Department of Electrical Engineering, " & _             "you can visit our Web site at "  wrdSelection.TypeText StrToAdd  ' Insert a hyperlink to the Web page.  wrdSelection.Hyperlinks.Add Anchor:=wrdSelection.Range, _     Address:="http://www.ee.stateu.tld"  ' Create a string, and insert it into the document.  StrToAdd = ".  Thank you for your interest in the classes " & _             "offered in the Department of Electrical " & _             "Engineering.  If you have any other questions, " & _             "please feel free to give us a call at " & _             "555-1212." & vbCr & vbCr & _             "Sincerely," & vbCr & vbCr & _             "Kathryn M. Hinsch" & vbCr & _             "Department of Electrical Engineering" & vbCr  wrdSelection.TypeText StrToAdd   ' Perform mail merge.  wrdMailMerge.Destination = wdSendToNewDocument  wrdMailMerge.Execute False  ' Close the original form document.  wrdDoc.Saved = True  wrdDoc.Close False  ' Notify user we are done.  MsgBox "Mail Merge Complete.", vbMsgBoxSetForeground  ' Release references.  Set wrdSelection = Nothing  Set wrdMailMerge = Nothing  Set wrdMergeFields = Nothing  Set wrdDoc = Nothing  Set wrdApp = Nothing  ' Clean up the temp file.  Kill "C:\DataDoc.doc"End SubPublic Sub InsertLines(LineNum As Integer)  Dim iCount As Integer' Insert "LineNum" blank lines.  For iCount = 1 To LineNum    wrdApp.Selection.TypeParagraph  Next iCountEnd SubPublic Sub FillRow(Doc As Word.Document, Row As Integer, _                   Text1 As String, Text2 As String, _                   Text3 As String, Text4 As String)                     With Doc.Tables(1)    ' Insert the data into the specific cell.    .Cell(Row, 1).Range.InsertAfter Text1    .Cell(Row, 2).Range.InsertAfter Text2    .Cell(Row, 3).Range.InsertAfter Text3    .Cell(Row, 4).Range.InsertAfter Text4  End WithEnd SubPublic Sub CreateMailMergeDataFile()  Dim wrdDataDoc As Word.Document  Dim iCount As Integer  ' Create a data source at C:\DataDoc.doc that contains the field data.  wrdDoc.MailMerge.CreateDataSource Name:="C:\DataDoc.doc", _        HeaderRecord:="FirstName, LastName, Address, CityStateZip"' Open the file to insert the data.  Set wrdDataDoc = wrdApp.Documents.Open("C:\DataDoc.doc")  For iCount = 1 To 2    wrdDataDoc.Tables(1).Rows.Add  Next iCount' Fill in the data.  FillRow wrdDataDoc, 2, "Steve", "DeBroux", _        "4567 Main Street", "Buffalo, NY  98052"  FillRow wrdDataDoc, 3, "Jan", "Miksovsky", _        "1234 5th Street", "Charlotte, NC  98765"  FillRow wrdDataDoc, 4, "Brian", "Valentine", _        "12348 78th Street  Apt. 214", "Lubbock, TX  25874"' Save and close the file.  wrdDataDoc.Save  wrdDataDoc.Close FalseEnd Sub					
  7. اضغط المفتاح F5 ثم انقر فوق الزر تشغيل العينة.
مراجع
للحصول على مزيد من المعلومات حول Office التنفيذ قم بزيارة موقع دعم Microsoft Office تطوير التالي:

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 220607 - آخر مراجعة: 12/05/2015 13:09:17 - المراجعة: 6.4

Microsoft Visual Basic 6.0 Learning Edition, Microsoft Visual Basic 5.0 Learning Edition, Microsoft Visual Basic 6.0 Professional Edition, Microsoft Visual Basic 5.0 Professional Edition, Microsoft Visual Basic Enterprise Edition for Windows 6.0, Microsoft Visual Basic 5.0 Enterprise Edition, Microsoft Office 2003, All Editions, Microsoft Office XP Developer Edition, Microsoft Office 2000 Developer Edition, Microsoft Office Word 2003, Microsoft Word 2002 Standard Edition, Microsoft Word 2000 Standard Edition, Microsoft Word 97 Standard Edition

  • kbnosurvey kbarchive kbmt kbautomation kbhowto KB220607 KbMtar
تعليقات