أوبن أوفيس بيسيك إيسنومبر
-
12-11-2019 - |
سؤال
لا بد لي من ترحيل وثيقة من مس إكسيل لفتح مكتب مع وحدات الماكرو.كل شيء يعمل بشكل جيد باستثناء هذه الوظيفة
If Application.WorksheetFunction.IsNumber(Cells(12, 5)) = False Then
MsgBox "Nesprávne zadané číslo účtu alebo kód banky!", vbCritical
ActiveSheet.Protect Password:="****", DrawingObjects:=True, Contents:=True, Scenarios:=True
Exit Sub
End If
انها تحقق من القيم المدرجة من قبل المستخدم.لكني أحصل على هذا الخطأ فقط:
خطأ وقت التشغيل الأساسي لم يتم تعيين متغير الكائن
لذلك قمت بفحص المستند مرتين ، إذا لم تكن الخلية إي 12 فارغة ، ولكن تم ملؤها.هل هناك في فتح مكتب طريقة مختلفة للتحقق من تنسيق الإدخال?شكرا
المحلول
الرقم في Excel Visual Basic مختلف مثل OO.حاول استخدام GetCellByName ("E12"). قيمة هذه الوظيفة ترجع رقمك
نصائح أخرى
إذا كان الخط If Application.WorksheetFunction.IsNumber(Cells(12, 5)) = False Then
فشل قائلا object not set
, ، وقد تحققت من ذلك Cells(12, 5)
إرجاع قيمة ، ثم الاحتمالات الوحيدة التي يمكن أن أفكر في أن يكون ذلك إما Application
أو Application.WorksheetFunction
هو Nothing
.