السلام عليكم
لدي ملفات وورد واريد ربطها مه فيجوال بيسك مع العلم ان الملفات عبارة عن دروس
ويتضمن الدروس صور ايضاً
وكل فترة اغير محتواة الملفات ز
ولكم كل الشكر
والملف بالمرفقات
السلام عليكم...
إذا كنت تريد التعامل مع Word كتطبيق مستقل و تقوم بفتح مستنداتك فيه فإليك هذه الطريقة:
أولا: افتح القائمة Project و اختر منها References.
ثانياً: ابحث عن Microsoft Word xx.x Object Library و قم بتحديده (حيث xx.x رقم يدل على نسخة مكتبة Word. أنا أستعمل Word 2003 و يظهر الرقم 11.0).
ثالثاً: استعمل الكود التالي:
Option Explicit
' الثوابت و الدوال التالية فقط لضبط نافذة وورد و إظهارها في المقدمة:
Private Const HWND_TOP = 0
Private Const SWP_SHOWWINDOW = &H40
Private Const SWP_NOSIZE = &H1
Private Const SWP_NOMOVE = &H2
Private Const SW_SHOWMAXIMIZED = 3
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
' متغير يمثل تطبيق وورد:
Private WordApp As New Word.Application
' دالة لإضافة شرطة مائلة في نهاية المسار:
Private Function AddBackSlash(APath As String) As String
Dim ThePath As String
ThePath = Trim(APath)
If ThePath = "" Then
AddBackSlash = ""
ElseIf Right(ThePath, 1) = "\" Then
AddBackSlash = ThePath
Else
AddBackSlash = ThePath & "\"
End If
End Function
' إجراء لفتح مستند وورد و إظهار نلفذة وورد في المقدمة:
Private Sub ShowWordDocument(ADocument As String)
Dim WinWnd As Long
On Error Resume Next
' إغلاق أية مستندات مفتوحة سابقاً:
If WordApp.Documents.Count > 0 Then WordApp.Documents.Close
If Err Then
Err.Clear
Set WordApp = New Word.Application
End If
' فتح المستند المطلوب في وضعية القراءة فقط:
WordApp.Documents.Open AddBackSlash(App.Path) & ADocument, , True
' إظهار نافذة وورد
WordApp.Visible = True
' وضع نافذة وورد في المقدمة و تكبيرها:
WinWnd = FindWindow("OpusApp", vbNullString)
SetWindowPos WinWnd, HWND_TOP, 0, 0, 0, 0, SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE
ShowWindow WinWnd, SW_SHOWMAXIMIZED
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Command3_Click()
' عرض المستند
ShowWordDocument "1.doc"
End Sub
Private Sub Command4_Click()
' عرض المستند
ShowWordDocument "2.doc"
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
' إغلاق برنامج وورد عند إغلاق البرنامج دون المطالبة بحفظ التعديلات:
WordApp.Quit False
End Subلاحظ أنك لست في حاجة إلى إغلاق برنامج Word عند إغلاق البرنامج لأن Word سيتم إغلاقه تلقائياً عند إغلاق برنامجك.
ملاحظ أخيرة: يمكنك فتح مستندات Word مباشرة داخل نافذة برنامجك باستعمال المكون OLE لكن لم أجد الوقت الكافي لتجربة بشكل كامل. ربما يستطيع أحد الأخوة مساعدتك في ذلك.
نرجو الاستفادة و السلام.
وَ قُلِ اعْمَلُوا فَسَيَرَى اللهُ عَمَلَكُمْ وَ رَسُولُهُ وَ الْمُؤْمِنُونَ
صدق الله العظيم
اشكرك اخي najy_zl على مساعدتك سوف اقوم بالتجربة
وشكرا