ryonis
چهارشنبه 28 بهمن 1388, 18:00 عصر
دوستان عزيز، در يكي از فرم هاي برنامه ام امكاني به كاربرها دادهام كه بعد از دانلود يك فايل اكسل، اون رو در مسير خاصي كپي كنن و با فشار دادن كليدي در فرم ، رديف هاي فايل اكسل به عنوان ركورد جديد به جدول خاصي ايمپورت شوند.
مشكل اينجاست كه بعد از انجام عمليات فوق به ظاهر excel بسته شده اما با رجوع به صفحه Task Manager ميبينيم هنوز باز است. اين امر هم باعث مي شود ديگر بدون رجوع به task manager فايل اكسل ديگري باز نشود و طبيعتاً كاربران عادي تنها مي تونن يكبار عمليات را انجام بدن...
سوال : آيا دستوري داريم كه پس از باز شدن اكسل در پشت زمينه بتواند آن را ببندد؟
(با كمك دوستان همين تالار ، در فرم مورد نظر كدهاي زير رو استفاده كرده ام)
Private Sub Command30_Click
Dim Xl As Excel.Application
Dim FileName As String
Dim wb As Workbook
Dim rng As Range
Dim LastRow As Long
Dim ws As Worksheet
Set Xl = New Excel.Application
FileName = "C:\name.xls"
If FileName = "False" Then Exit Sub
Set wb = Xl.Workbooks.Open(FileName)
Set ws = wb.Worksheets("name")
LastRow = ws.Range("A65536").End(xlUp).Row
ws.Range("A3:T" & LastRow).Copy
DoCmd.OpenTable ("Merchants") 'Opens the table
DoCmd.SetWarnings False
DoCmd.RunCommand acCmdPasteAppend
MsgBox "ÚãáíÇÊ ÈÑæÒÑÓÇäí ÈÇ ãæÝÞíÊ ÇäÌÇã ÑÏíÏ", vbOKOnly, " ÚãáíÇÊ ÈÑæÒÑÓÇäí"
wb.Saved = True
wb.Close Save, "c:\name.xls"
Set Xl = Nothing
End Sub
ببخشيد اگه بعضي از نوشته ها (مثل پرانتزها) جابجا شده! :متفکر::متفکر:
مشكل اينجاست كه بعد از انجام عمليات فوق به ظاهر excel بسته شده اما با رجوع به صفحه Task Manager ميبينيم هنوز باز است. اين امر هم باعث مي شود ديگر بدون رجوع به task manager فايل اكسل ديگري باز نشود و طبيعتاً كاربران عادي تنها مي تونن يكبار عمليات را انجام بدن...
سوال : آيا دستوري داريم كه پس از باز شدن اكسل در پشت زمينه بتواند آن را ببندد؟
(با كمك دوستان همين تالار ، در فرم مورد نظر كدهاي زير رو استفاده كرده ام)
Private Sub Command30_Click
Dim Xl As Excel.Application
Dim FileName As String
Dim wb As Workbook
Dim rng As Range
Dim LastRow As Long
Dim ws As Worksheet
Set Xl = New Excel.Application
FileName = "C:\name.xls"
If FileName = "False" Then Exit Sub
Set wb = Xl.Workbooks.Open(FileName)
Set ws = wb.Worksheets("name")
LastRow = ws.Range("A65536").End(xlUp).Row
ws.Range("A3:T" & LastRow).Copy
DoCmd.OpenTable ("Merchants") 'Opens the table
DoCmd.SetWarnings False
DoCmd.RunCommand acCmdPasteAppend
MsgBox "ÚãáíÇÊ ÈÑæÒÑÓÇäí ÈÇ ãæÝÞíÊ ÇäÌÇã ÑÏíÏ", vbOKOnly, " ÚãáíÇÊ ÈÑæÒÑÓÇäí"
wb.Saved = True
wb.Close Save, "c:\name.xls"
Set Xl = Nothing
End Sub
ببخشيد اگه بعضي از نوشته ها (مثل پرانتزها) جابجا شده! :متفکر::متفکر: