منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : فتح ملف اكسل داخل web browser
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
اذا كان لدي هذه الواجهة

اريد بعدما اختار كافة الخيارات ان يفتح لي جدول الصف داخل ال web browser
علما ان الجدول لجميع المدارس له نفس الاسم marks_table ولكن كل جدول يوجد داخل مجلد خاص بالمدرسة

عملت الكود وزبط لكن وجدت مشكله انه لما افتح اول مرة بفتح لكن عندما اختار مدرسة اخرى وطالب اخر يكتب لي ان هذا الملف مفتوح مسبقا فكيف استطيع ان اغلفه

هذا الكود
sFileName = "D:\school_tables\" & school_name& "\marks_table.xls"

If Len(sFileName) Then
WebBrowser1.Navigate(sFileName)
End If
السلام عليكم ورحمة الله وبركاته

أخي الكريم
قم بإغلاق الصفحة الحالية باستخدام الكود التالي

كود :
WebBrowser1.Navigate("about:blank")

بعد ذلك قم بفتح ملف آخر

بالتوفيق
شكرا لك لكن نفس الخطا يخرج لي
tecno2012 كتب :شكرا لك لكن نفس الخطا يخرج لي

السلام عليكم ورحمة الله وبركاته

أخي الكريم
يجب إعطاء مهلة للمتصفح حتى يقوم بإغلاق الملف المفتوح وبعد ذلك فتح الملف الجديد
وأفضل حدث يمكن استخدامه هو WebBrowser1_DocumentCompleted
لاحظ الكود التالي
كود :
Public Class Form1
    Dim CanOpen As Boolean = False
    Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
        If CanOpen = True Then
            WebBrowser1.Navigate("c:\book1.xls")
            CanOpen = False
        End If
    End Sub
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If IsNothing(WebBrowser1.Url) = False AndAlso WebBrowser1.Url.AbsolutePath.ToLower.EndsWith(".xls") Then
            CanOpen = True
            WebBrowser1.Navigate("about:blank")
        Else
            WebBrowser1.Navigate("c:\book1.xls")
        End If
    End Sub
End Class

انسخه كما هو وضعه ضمن الكود الخاص بمشروعك
وسيعمل بإذن الله

بالتوفيق