تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] فتح ملف وورد
#1

  1. Process.start("D\all\mn.docx")استخدم هذا الكود لفتح كتاب وورد اسمه mn موجود  على قرص d ضمن مجلد اسمه allكيف بقدر بحال لم يجد المجلد all على القرص d ياتي به من الفلاشة hيعني بحال لم يجده في d ياتي به من h
الرد }}}
تم الشكر بواسطة:
#2
يمكنك استخدام كود  يتحقق أولًا من وجود الملف في المسار الأساسي (D:\all\mn.docx) وإذا لم يكن موجودًا، يحاول فتح الملف من الفلاشة (مثلًا H:\all\mn.docx). 

إليك الطريقة:

PHP كود :
Imports System.IO
Imports System
.Diagnostics

Sub OpenWordDocument
()
 
   Dim filePathD As String "D:\all\mn.docx"
 
   Dim filePathH As String "H:\all\mn.docx"

 
   If File.Exists(filePathDThen
        Process
.Start(filePathD)
 
   ElseIf File.Exists(filePathHThen
        Process
.Start(filePathH)
 
   Else
        MessageBox
.Show("الملف غير موجود على القرص D أو الفلاشة H""خطأ"MessageBoxButtons.OKMessageBoxIcon.ErrorMessageBoxDefaultButton.Button1MessageBoxOptions.RightAlign)
 
   End If
End Sub 

وإذا أردت أن يبحث حتى في D: ضمن حلقة الأقراص:

يمكنك تعديل الكود بحيث يتحقق من كل الأقراص، بما فيها D: . 


PHP كود :
Imports System.IO
Imports System
.Diagnostics

Sub OpenWordDocument
()
 
   For Each drive As DriveInfo In DriveInfo.GetDrives()
 
       If drive.IsReady AndAlso (drive.DriveType DriveType.Removable OrElse drive.DriveType DriveType.FixedThen
            Dim path 
As String Path.Combine(drive.Name"all\mn.docx")
 
           If File.Exists(pathThen
                Process
.Start(path)
 
               Exit Sub
            End 
If
 
       End If
 
   Next

    MessageBox
.Show("الملف mn.docx غير موجود في أي قرص.""خطأ"MessageBoxButtons.OKMessageBoxIcon.ErrorMessageBoxDefaultButton.Button1MessageBoxOptions.RightAlign)
End Sub 
هكذا:
الرد }}}
تم الشكر بواسطة: EMADW , أبووسم2 , أبووسم2 , أبو خالد الشكري
#3
اخي الكريم لم يعمل معي هذا الكود لا اعرف اين المشكلة
الرد }}}
تم الشكر بواسطة:
#4
هل وضعت الكود المرفق في زر

PHP كود :
OpenWordDocument() 
الرد }}}
تم الشكر بواسطة:
#5
اذا في مجال ترفق الكود بمشروع لان جربت كل الاحتمالات وما اشتغل معي الكود
الرد }}}
تم الشكر بواسطة:
#6
تم تجربة المثال على جهازي 

الملف موجود في ميموري كارد موصولة بالجهاز

قم بتجربته


الملفات المرفقة
.rar   OpenDoc.rar (الحجم : 46.24 ك ب / التحميلات : 17)
الرد }}}
تم الشكر بواسطة: EMADW
#7
شكرا الك اخي الكريم الكود يعمل بشكل صحيح لكن ضمن مشروعي عندي اكثر من عشرة ازرار كل زر يفتح لي مستند وورد مختلف عن الاخر   وكلهم ضمن مجلد all
كما هو موضح بمشروعي المرفق ياريت المساعدة


الملفات المرفقة
.rar   فتح وورد.rar (الحجم : 71.63 ك ب / التحميلات : 21)
الرد }}}
تم الشكر بواسطة:
#8
كل ما عليك ان تفعله هو تبديل اسم الملف مثلا من mn إلى hj و ساحاول عند عودتي من العمل انشاء ملف كلاس لمنع تكرار الاكواد
الرد }}}
تم الشكر بواسطة: EMADW
#9
في المثال المرفق استخدمت تكست بوكس تكتب به اسم الملف الذي تريد فتحه 
واستخدمت كلاس 

تضع في الفورم 

PHP كود :
Imports System.IO
Public Class Form1
    Private Sub btnOpenDoc_Click
(sender As ObjectAs EventArgsHandles btnOpenDoc.Click
        Dim fileName 
As String TxtFileName.Text.Trim()
 
       WordFileOpener.OpenWordDocument(fileName)
 
   End Sub

End 
Class 

تضع في الكلاس 
PHP كود :
Imports System.IO
Imports System
.Diagnostics

Public Class WordFileOpener
    Public Shared Sub OpenWordDocument
(fileName As String)
 
       If String.IsNullOrWhiteSpace(fileNameThen
            MessageBox
.Show("يرجى إدخال اسم الملف.""تنبيه"MessageBoxButtons.OKMessageBoxIcon.WarningMessageBoxDefaultButton.Button1MessageBoxOptions.RightAlign)
 
           Return
        End 
If

 
       ' تأكد من أن الاسم ينتهي بـ .docx
        If Not fileName.ToLower().EndsWith(".docx") Then
            fileName &= ".docx"
        End If

        For Each drive As DriveInfo In DriveInfo.GetDrives()
            If drive.IsReady AndAlso (drive.DriveType = DriveType.Removable OrElse drive.DriveType = DriveType.Fixed) Then
                Dim path As String = IO.Path.Combine(drive.Name, "all", fileName)
                If File.Exists(path) Then
                    Process.Start(path)
                    Exit Sub
                End If
            End If
        Next

        MessageBox.Show("الملف " & fileName & " غير موجود في أي قرص.", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign)
    End Sub
End Class 

واذا كنت تريد فتح اي نوع من الملفات اتبع الاتي 

في الكلاس تكتب الآتي

PHP كود :
Imports System.IO
Imports System
.Diagnostics

Public Class FileOpener
    Public Shared Sub OpenDocument
(fileName As StringfileExtension As String)
 
       If String.IsNullOrWhiteSpace(fileNameOrElse String.IsNullOrWhiteSpace(fileExtensionThen
            MessageBox
.Show("يرجى إدخال اسم الملف ونوع الامتداد.""تنبيه"MessageBoxButtons.OKMessageBoxIcon.WarningMessageBoxDefaultButton.Button1MessageBoxOptions.RightAlign)
 
           Return
        End 
If

 
       ' تأكد من وجود النقطة في الامتداد
        If Not fileExtension.StartsWith(".") Then
            fileExtension = "." & fileExtension
        End If

        Dim fullFileName As String = fileName & fileExtension

        For Each drive As DriveInfo In DriveInfo.GetDrives()
            If drive.IsReady AndAlso (drive.DriveType = DriveType.Removable OrElse drive.DriveType = DriveType.Fixed) Then
                Dim path As String = IO.Path.Combine(drive.Name, "all", fullFileName)
                If File.Exists(path) Then
                    Process.Start(path)
                    Exit Sub
                End If
            End If
        Next

        MessageBox.Show("الملف " & fullFileName & " غير موجود في أي قرص.", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign)
    End Sub
End Class 


في الفورم تكتب الآتي

PHP كود :
Private Sub BtnOpenFile_Click(sender As ObjectAs EventArgsHandles BtnOpenFile.Click
    Dim fileName 
As String TxtFileName.Text.Trim()
 
   Dim extension As String TxtExtension.Text.Trim()
 
   FileOpener.OpenDocument(fileNameextension)
End Sub 


واذا اردت يمكن استخدام OpenFileDialog

كالآتي 

PHP كود :
Imports System.IO
Imports System
.Diagnostics
Imports System
.Windows.Forms

Public Class FileOpener

    
' فتح ملف بالاسم والامتداد من مجلد all في جميع الأقراص
    Public Shared Sub OpenDocument(fileName As String, fileExtension As String)
        If String.IsNullOrWhiteSpace(fileName) OrElse String.IsNullOrWhiteSpace(fileExtension) Then
            MessageBox.Show("يرجى إدخال اسم الملف ونوع الامتداد.", "تنبيه", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign)
            Return
        End If

        If Not fileExtension.StartsWith(".") Then
            fileExtension = "." & fileExtension
        End If

        Dim fullFileName As String = fileName & fileExtension

        For Each drive As DriveInfo In DriveInfo.GetDrives()
            If drive.IsReady AndAlso (drive.DriveType = DriveType.Removable OrElse drive.DriveType = DriveType.Fixed) Then
                Dim path As String = IO.Path.Combine(drive.Name, "all", fullFileName)
                If File.Exists(path) Then
                    Process.Start(path)
                    Exit Sub
                End If
            End If
        Next

        MessageBox.Show("الملف " & fullFileName & " غير موجود في أي قرص.", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign)
    End Sub

    ' 
فتح الملف يدويًا باستخدام OpenFileDialog
    Public Shared Sub OpenFileWithDialog
()
 
       Dim ofd As New OpenFileDialog()
 
       ofd.Title "اختر ملفًا"
 
       ofd.Filter "ملفات Word|*.docx|ملفات PDF|*.pdf|كل الملفات|*.*"

 
       If ofd.ShowDialog() = DialogResult.OK Then
            Try
                Process
.Start(ofd.FileName)
 
           Catch ex As Exception
                MessageBox
.Show("حدث خطأ أثناء فتح الملف: " ex.Message"خطأ"MessageBoxButtons.OKMessageBoxIcon.ErrorMessageBoxDefaultButton.Button1MessageBoxOptions.RightAlign)
 
           End Try
 
       End If
 
   End Sub

End 
Class 


زر لفتح الملف تلقائيًا بالاسم والامتداد:

PHP كود :
Private Sub BtnOpenByName_Click(sender As ObjectAs EventArgsHandles BtnOpenByName.Click
    Dim fileName 
As String TxtFileName.Text.Trim()
 
   Dim extension As String TxtExtension.Text.Trim()
 
   FileOpener.OpenDocument(fileNameextension)
End Sub 

زر لفتح الملف يدويًا عن طريق اختيار من الجهاز:

PHP كود :
Private Sub BtnOpenByDialog_Click(sender As ObjectAs EventArgsHandles BtnOpenByDialog.Click
    FileOpener
.OpenFileWithDialog()
End Sub 


الملفات المرفقة
.rar   OpenDoc.rar (الحجم : 50.31 ك ب / التحميلات : 16)
الرد }}}
#10
PHP كود :
Public Class Form1

    Sub OpenWordDocument
()
 
       Dim filePathD As String "D:\all\4.docx"
 
       Dim filePathH As String "H:\all\4.docx"
 
       Dim filePathe As String "e:\all\4.docx"
 
       Dim filePathc As String "c:\all\4.docx"
 
       Dim filePathg As String "g:\all\4.docx"
 
       If File.Exists(filePathDThen
            Process
.Start(filePathD)
 
       ElseIf File.Exists(filePathHThen
            Process
.Start(filePathH)
 
       ElseIf File.Exists(filePathcThen
            Process
.Start(filePathc)
 
       ElseIf File.Exists(filePatheThen
            Process
.Start(filePathe)
 
       ElseIf File.Exists(filePathgThen
            Process
.Start(filePathg)
 
       Else
            MessageBox
.Show("الملف المطلوب غير موجود على اي قرص""خطأ"MessageBoxButtons.OKMessageBoxIcon.ErrorMessageBoxDefaultButton.Button1MessageBoxOptions.RightAlign)
 
       End If




 
   End Sub
بقدر اختصر هذا الكود لو سمحتم 
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  القاعدة رغم وجود الباس وورد اصبحت لا تفتح atefkhalf2004 5 470 20-10-25, 10:24 AM
آخر رد: dr.programming
  طلب كود اظهار مستند وورد فوق نافذة الفورم Mostchar 0 376 17-05-24, 07:54 PM
آخر رد: Mostchar
  [سؤال] الطباعة من وورد بواسطة فيجوال بيسك AnasAlhussain 5 2,394 16-05-24, 06:10 PM
آخر رد: amzahrano
  كيف افتح مستند وورد داخل الفورم ؟ أبووسم 11 1,998 29-03-23, 09:54 PM
آخر رد: أبووسم
  [VB.NET] طلب تعديل كود لتصدير بيانات داتاجريدفيو الي ملف وورد moftah70 2 977 03-10-22, 01:36 AM
آخر رد: أبووسم
  كود اغلاق كل ملفات وورد المفتوحة samira20 1 1,103 23-12-21, 10:25 PM
آخر رد: aljzazy
  [VB.NET] مشكلة عند تصدير بيانات الداتا جريد فيو الي ملف وورد moftah70 0 1,388 21-11-21, 01:44 AM
آخر رد: moftah70
  [سؤال] كود يبحث في ملفات وورد docx ولا يبحث في doc فما الحل؟ السندبااد 1 1,243 20-11-20, 10:45 PM
آخر رد: السندبااد
  [VB.NET] طلب كود تصدير بيانات داتا جريد فيو إلى وورد waelalmsry75 11 6,536 15-05-20, 11:55 PM
آخر رد: aljzazy
  كيف اقراء بيانات من ملف وورد الى اداة RichTextBox aftfm 6 3,577 03-05-20, 05:41 AM
آخر رد: ابو ليلى

التنقل السريع :


يقوم بقرائة الموضوع: