BUG: Disregards برنامج تشغيل ODBC Excel FirstRowHasNames أو إعداد رأس

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية288343
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
الأعراض
عند استخدام برنامج تشغيل Microsoft Excel اتصال قواعد البيانات المفتوح (ODBC) للاتصال بورقة عمل Excel كمصدر بيانات ODBC، يفترض برنامج التشغيل بشكل افتراضي الصف الأول من بيانات ورقة العمل يحتوي على رؤوس الأعمدة (أسماء الحقول). يمكن استخدام إعداد اتصال FirstRowHasNames اختياري استناداً إلى وثائق برنامج التشغيل في تغيير هذا السلوك الافتراضي باستخدام 0 خطأ و 1 True. ومع ذلك، في الواقع، disregards برنامج التشغيل هذا الإعداد ثم تتم دوماً معاملة الصف الأول من البيانات كعناوين أعمدة. إذا لم يحتوي الصف الأول من البيانات على عناوين الأعمدة أو الإدخالات الأخرى ، تكون النتيجة الفعالة أن الصف الأول من البيانات "يختفي."
السبب
لا يتم تمرير قيمة FirstRowHasNames أو المعلمة رأس (HDR) إلى برنامج تشغيل ODBC Excel.
الحل
HDR = الإعداد متوفر والوظيفي عند استخدام Microsoft موفر Jet OLE DB وبرنامج Excel ISAM الخاصة به. لذلك، يكون أفضل حل استخدام موفر Jet بدلاً من برنامج تشغيل ODBC Excel.

لأن برنامج تشغيل ODBC Excel دائماً يفترض أن الصف الأول يحتوي على أسماء الحقول ، دوماً يجب أن يتضمن الصف الأول أسماء حقل صحيح, أو إدخالات وهمية المطور كان يرغب في تجاهل.
تصريح
أقرت Microsoft أن هذا خطأ في منتجات Microsoft المسردة في بداية هذه المقالة.
معلومات أخرى

خطوات إعادة إنشاء السلوك

  1. إنشاء مصنف Excel جديد وقم بحفظه باسم افتراضي في المجلد حيث سيتم إنشاء المشروع اختبار Visual Basic.
  2. في الخلية A1، تعبئة بعض الخلايا في العمود الأول بيانات عشوائية.
  3. إنشاء مشروع Visual Basic جديد ثم قم بتعيين مرجع إلى كائنات بيانات ActiveX (ADO).
  4. أدخل التعليمة البرمجية التالية وتشغيل:
    Private Sub Form_Load()  Dim cn As ADODB.Connection  Dim rs As ADODB.Recordset  Set cn = New ADODB.Connection  With cn    .Provider = "MSDASQL"    .ConnectionString = "Driver={Microsoft Excel Driver (*.xls)};DBQ=" & App.Path & "\Book1.xls;FirstRowHasNames=0;"    .Open  End With  Set rs = New ADODB.Recordset  With rs    Set .ActiveConnection = cn    .Source = "[Sheet1$]"    .Open  End With  Debug.Print rs.Fields(0).Value  Debug.Print rs.Fields(0).Name  rs.Close  cn.CloseEnd Sub					
عادةً التي تتوقع لمعرفة برنامج تشغيل Excel لتعيين اسم الحقل الافتراضي "F1" إلى العمود من البيانات ولعرض بدءاً بيانات السجل الأول الذي قمت بإدخاله في الخلية A1. ومع ذلك، لاحظ أنه في إطار Debug القيمة التي أدخلتها في الخلية A2 طباعة قيمة السجل الأول spite من الحاجة مجموعة FirstRowHasNames إلى خطأ. القيمة في الخلية A1 "اختفى" يصبح اسم حقل العمود.

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 288343 - آخر مراجعة: 12/06/2015 00:26:47 - المراجعة: 3.2

Microsoft Data Access Components 2.1, Microsoft Data Access Components 2.1 Service Pack 2, Microsoft Data Access Components 2.1 Service Pack 1, Microsoft Data Access Components 2.1 Service Pack 2, Microsoft Data Access Components 2.5 Service Pack 1, Microsoft Data Access Components 2.5

  • kbnosurvey kbarchive kbmt kbbug kbmdacnosweep kbpending KB288343 KbMtar
تعليقات