ارتباط Access با Excel و انتقال Recordset
فصل ۱۴ — ارتباط Access با Microsoft Excel
Excel برای What-if و تحلیل Worksheet مناسب است و Access میتواند Data را با Automation به Workbook مشخص انتقال دهد.
آمادهسازی Worksheet
Workbook نمونه Cellهای نامگذاریشده دارد؛ Named Range باعث میشود VBA بهجای Addressهایی مانند B7 از نام معنایی مثل FromAccess استفاده کند. File باید در Path مشخص ذخیره شود تا Code آن را باز کند.
Objectهای Excel
Dim Xl As Excel.Application
Dim XlBook As Excel.Workbook
Dim XlSheet As Excel.Worksheet
Set Xl = New Excel.Application
Set XlBook = Xl.Workbooks.Open(MySheetPath)
Set XlSheet = XlBook.Worksheets(1)
Visible کردن Excel و Workbook برای مشاهدهٔ Result انجام میشود.
Cell و Named Range
Value Control مانند GrandTotal از Form Access میتواند به Range نامگذاریشده در Worksheet Assign شود. پس از تغییر، Workbook Save میشود.
کپی Recordset
Query Access میتواند SQL موردنیاز را تعریف کند؛ ADO Recordset باز میشود و Excel Range از Method مناسب برای Copy Recordset استفاده میکند تا چند Record یکجا به Sheet منتقل شوند.
اجرای Macro Excel
اگر منطق پیچیدهای از قبل به شکل Excel Macro وجود دارد، Access میتواند Macro Workbook را Run کند. نویسنده پیشنهاد میکند از Macro Recorder Excel برای کشف Commandهای Automation استفاده و سپس Code را تمیز/تطبیق دهید.
شکلها و عناصر بصری این بخش