الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

محتاج تغيير اسم برنامج بالوندو ولم أفلح

بدأه مفرج في 19 ديسمبر 2009 · 3 رد · 481 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

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

إخوتي الكرام

عندي برنامج يقرأ معلومات من قاعدة بيانات أخرى وإذا تمت القراءة يجب تعديل اسم القاعدة حتى لاتتركرر قراءتها

لكن لم أستطع تشغيل البرنامج أرجو التكرم بالمساعدة

    
    Dim result As Integer, FileName As String, FileName2 As String
    Dim dbc As Database, dbo As Database, RSR As Recordset, RSM As Recordset, RSI As Recordset
    With Application.FileDialog(msoFileDialogFilePicker)
        .Filters.Clear
        .Title = "حدد القاعدة المصدر"
        .Filters.Add "Microsoft Access", "*.mdb"
        .FilterIndex = 1
        .AllowMultiSelect = False
        .InitialFileName = CurrentProject.Path
        result = .Show
        Set dbc = CurrentDb()
        FileName = Left(Trim(.SelectedItems.Item(1)), Len(Trim(.SelectedItems.Item(1))) - 4)
        FileName2 = Left(Trim(.SelectedItems.Item(1)), Len(Trim(.SelectedItems.Item(1))) - 4) & "_قديم.mdb"
        If (result <> 0) Then Set dbo = OpenDatabase(Trim(.SelectedItems.Item(1)))
    End With
    Shell "Rename " & FileName & "' '" & FileName2 & "'"

post-74-12612218690636_thumb.jpg

تم تعديل هذه المشاركة بواسطة مفرج في 19 ديسمبر 2009 في 14:33

من سار على الدرب وصل

#2

ماحصلتوا حل بارك الله فيكم

المشكلة إذا أنا أدخلت المسار يعمل أما إذا أخذته آليا لايعمل الرجو المساعدة

 
Private Static Function xx()
  '  On Error Resume Next
    Dim result As Integer, FileName As String, FileName2 As String
    With Application.FileDialog(msoFileDialogFilePicker)
        .Filters.Clear
        .Title = "حدد القاعدة المصدر"
        .Filters.Add "Microsoft Access", "*.mdb"
        .FilterIndex = 1
        .AllowMultiSelect = False
        .InitialFileName = CurrentProject.Path
        result = .Show
        Set dbc = CurrentDb()
        FileName = Trim(.SelectedItems.Item(1))
        FileName2 = Left(Trim(.SelectedItems.Item(1)), Len(Trim(.SelectedItems.Item(1))) - 4) & "_ZZ.mdb"
        If (result <> 0) Then Set dbo = OpenDatabase(Trim(.SelectedItems.Item(1)))
    End With
    FileName3 = "E:\علي سعيد\xx.mdb"
    FileName4 = "E:\علي سعيد\XX_ZZ.mdb"
    MsgBox "FileName   = " & FileName & vbNewLine & "FileName2 = " & FileName2 & vbNewLine & _
           "FileName3 = " & FileName3 & vbNewLine & "FileName4 = " & FileName4
    Name FileName As FileName2     '    لا يعمل
   ' Name FileName3 As FileName4   '  شغال
    'Name "E:\علي سعيد\xx.mdb" As  "E:\علي سعيد\XX_ZZ.mdb"  '   شغال
End Function

-------------------

تم تعديل هذه المشاركة بواسطة مفرج في 21 ديسمبر 2009 في 10:33

من سار على الدرب وصل

#3

جرب أخي الكود مرة أخرى كالتالي:

Private Static Function xx()
    'On Error Resume Next
    Dim result As Integer, FileName As String, FileName2 As String, dbc As DAO.Database
    With Application.FileDialog(msoFileDialogFilePicker)
        .Filters.Clear
        .Title = "حدد القاعدة المصدر"
        .Filters.Add "Microsoft Access", "*.mdb"
        .FilterIndex = 1
        .AllowMultiSelect = False
        .InitialFileName = CurrentProject.Path
        result = .Show
        Set dbc = CurrentDb()
        FileName = Trim(.SelectedItems.Item(1))
        FileName2 = Left(Trim(.SelectedItems.Item(1)), Len(Trim(.SelectedItems.Item(1))) - 4) & "_ZZ.mdb"
        'If (result <> 0) Then Set dbo = OpenDatabase(Trim(.SelectedItems.Item(1)))
    End With
    Name FileName As FileName2
End Function

لاحظ السطر المبعد:

  'If (result <> 0) Then Set dbo = OpenDatabase(Trim(.SelectedItems.Item(1)))

الهدف من هذا السطر غير واضح: كيف تفتح قاعدة بيانات ثم تغير اسمها؟ ربما كنت تقصد

  'If (result = 0) Then Set dbo = OpenDatabase(Trim(.SelectedItems.Item(1)))

؟

والله أعلم.

1
#4

مشكور بارك الله فيك ورحم والديك

اسأل الله العظيم أن يرزقك من حيث لاتحتسب

اشتغل البرنامج انا أفتح قاعدة بيانات وأقرأ الجدول ثم أغير أسمها حتى لا يتكرر إدخاله من المستخدم.

لكن الذي جعلني لأقفل القاعدة إني إذا كتبت الأمر :

filename = "c:\floder\db1.mdb"
filename2 = "c:\floder\db1_old.mdb"
rename filename as filename

يغير إسم القاعدة حتى لو كانت مفتوحة

تم تعديل هذه المشاركة بواسطة مفرج في 21 ديسمبر 2009 في 21:10

من سار على الدرب وصل

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…