اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

استيراد صفحة html الى جدول جديد فى اكسيس عن طريق الكود


إذهب إلى أفضل إجابة Solved by أبو إبراهيم الغامدي,

الردود الموصى بها

  • أفضل إجابة

أهلا @محمد احمد لطفى

الشفرة التالية تفي بالغرض إن شاء الله..

Private Sub أمر0_Click()
On Error GoTo ERR_CODES
   
   Dim HTML_FILE_NAME As String
   Dim HTML_TITLE As String
   Dim TABLE_NAME As String
   Dim SQL As String
   
   '-- ASSIGNING VALUES TO SQL STATMENT VARIABLES
   Const HTML_SPECIFICATION As String = " [HTML IMPORT;HDR=YES;] "
   HTML_FILE_NAME = CurrentProject.Path & "\" & "0125.HTML" '.. THE HTML FILE IS THE DATABASE
   HTML_TITLE = "0125" '.. THE HTML TABLE NAME IS THE HTML TITLE
   
CREATE_TABLE_SQL:
   '-- ASSIGNING TABLE NAME USING INPUTBOX
   TABLE_NAME = InputBox(Err.Description & " Plase Enter New Table Name.", _
   "New Table Name", , Me.WindowWidth / 2, Me.WindowHeight / 2)
   If Len(TABLE_NAME) = 0 Then
      GoTo EXIT_SUB
   End If
   
   '-- CREATE SQL STATMENT
   SQL = ""
   SQL = SQL & " SELECT * INTO " & TABLE_NAME
   SQL = SQL & " FROM " & HTML_TITLE
   SQL = SQL & " IN'" & HTML_FILE_NAME & "'"
   SQL = SQL & HTML_SPECIFICATION
   
   '-- EXECUTE SQL STATEMENT TO CREATE TABLE
   CurrentDb.Execute SQL
   Application.RefreshDatabaseWindow

EXIT_SUB:
   Exit Sub

ERR_CODES:
   If Err.Number = 3010 Then
      GoTo CREATE_TABLE_SQL
   Else
      MsgBox Err.Number & vbNewLine & Err.Description
   End If
End Sub

IMPORT_HTML_TABLE.zip

  • Like 3
  • Thanks 2
رابط هذا التعليق
شارك

اخي العزيز ابو ابراهيم

هذا السطر  يجلب من الصفحة شرط وجود الجدول مسبقا في قاعدة البيانات

DoCmd.TransferText acImportHTML, , "HTML1", CurrentProject.Path & "\0125.html", True, "0125"

اذا جعلت اسماء الحقول في الجدول f1 , f2 ,f3 ....... وهكذا  ، واستبدلت true بـــــــــ false يجلب البيانات + رأس العمود

واذا سميت الحقول مثل ما هي في الصفحة لا يعمل الا مع true  ويجلب جسم الجدول ولكن لا يظهر السجل الأول

لو القيت نظرة بارك الله فيك

 

IMPORT_HTML2.rar

  • Like 2
رابط هذا التعليق
شارك

أهلا @ابوخليل

1 ساعه مضت, ابوخليل said:

هذا السطر  يجلب من الصفحة شرط وجود الجدول مسبقا في قاعدة البيانات

لا أعتقد أن هذه العبارة صحيحة، والسطر التالي يوضح المقصود

DoCmd.TransferText acImportHTML ,,InputBox("plase Enter Table Name"),currentproject.Path & "\0125.html",true,"0125"

DoCmd.TransferText acImportHTML ما هو إلا نهج مغلف لنفس الإجراء المقدم في إجابتي السابقة! وهي تعليمية أكثر منها إجابة، والنهبج المشار إليه سهل وبسيط!

كما لا يفوتني أن  أشكرك علي عتب المحب المغلف بهذه الإلماحة..😇 

  • Like 1
رابط هذا التعليق
شارك

أستاذى @أبو إبراهيم الغامدي

هناك ملف يكون أول سطر به فارغ حيث عند استيراده فى اكسل يظهر هذا السطر و تم معالجته باضافة "A2:j100000"
 

Dim x3, x4
x3 = CurrentProject.Path & "\" & "0125" & ".xls"
'اكتب اسم الجدول المراد انشاءه
x4 = "جدول جديد"
DoCmd.TransferSpreadsheet acImport, 10, x4, x3, True, "A2:j100000"

كما يظهر فى الصورة

Screenshot (50).png

 

هل يمكن معالجته هنا 
 

تم تعديل بواسطه محمد احمد لطفى
رابط هذا التعليق
شارك

استاذنا الفاضل @أبو إبراهيم الغامدي 

هل ممكن العكس  اي نقل من الجدول الي الملف

تم تعديل بواسطه النجاشي
رابط هذا التعليق
شارك

أستاذى @أبو إبراهيم الغامدي

هناك ملف يكون أول سطر به فارغ حيث عند استيراده فى اكسل يظهر هذا السطر و تم معالجته باضافة "A2:j100000"
 

Dim x3, x4
x3 = CurrentProject.Path & "\" & "0125" & ".xls"
'اكتب اسم الجدول المراد انشاءه
x4 = "جدول جديد"
DoCmd.TransferSpreadsheet acImport, 10, x4, x3, True, "A2:j100000"

كما يظهر فى الصورة

Screenshot (50).png

 

هل يمكن معالجته هنا 
تم ارفاق الملف

0125.rar

رابط هذا التعليق
شارك

اخوي محمد ، الملف المرفق يختلف في هيئته وتنسيقه عن الملف الاصل !!

علشان يشتغل برنامج احوي ابو ابراهيم ، ونجري تعديلات عليه ، رجاء يكون ملفك بنفس الصغة والتنسيق السابق 🙂

 

جعفر

رابط هذا التعليق
شارك

للأسف أستاذى @jjafferr هذه الصيغه الوحيده فى البرنامج فى عملى حيث  حين استخرجها أكسل تفقد بعض البيانات 

هل يمكن استيرادها بأكسيس 

0125.rar

تم تعديل بواسطه محمد احمد لطفى
رابط هذا التعليق
شارك

طيب ما ينفعش نسحب البيانات لجدول موجود قبل كده

ملف html براس الحقول الى داخل جدول 

جمعه طيبه مباركه

تم تعديل بواسطه محمد احمد لطفى
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information