پشتیبانی از VBA در OpenOffice.Org محاسبه
نوشته شده در 21. مهر ماه، 2009 توسط کریشنان در فنی و مهندسی ، HOWTO ، مجموعه اداری OpenOffice.org ، نکات
برای سال های بسیاری تا دیروز، من از OpenOffice.Org محاسبه می دانستند. امروز، من درباره آن هیجان زده هستم.
من سعی کردم آفیس اپن سورس چندین سال پیش. این می تواند چند چیز را در آن انجام دهید، اما من بلافاصله به عنوان نامناسب برای نیازهای من را رد کرد. من همواره از طرفداران VBA برای اکسل انجام دهید.
هفته گذشته، پیچیده ترین قطعه از نرم افزار VBA من همیشه می خواهم نوشته شده است. من یک کاربر جدید VBA و من آن را در زمان یک هفته را به پایان برساند کد است که می تواند در 28 صفحه A4 چاپ شده است. گسترده من تا تاریخ بی وقفه بر روی XP / آفیس 2003 کار می کند مثل آن است به تصور، اما من بیشتر از کد من در ویندوز ویستا / آفیس 2007 نوشت.
وقتی که من به فشار دبیان به روز رسانی، مجموعه اداری OpenOffice.org 3.1.1 با آن است. چک کردن نسخه جدید و تحت تاثیر قرار گرفت که یکی از ماکروها در پایتون، جاوا اسکریپت، BeanShell علاوه بر به BASIC نوشتن.
من سعی کردم برای باز کردن پیچیده ترین قطعه من از کد VBA در Openoffice.org و من با صدها نفر از پیام های خطا تکراری که من تا به حال برای کشتن گسترده از خط فرمان بمباران شد. من متقاعد شده بود که VBA و OOoCalc سازگار نیست، تا وقتی که من کشف این سایت در هنگام تصادف تلاش برای یاد گرفتن و نوشتن ماکرو جاوا اسکریپت را در OOO.
OK را بزنید. تمام چیزی که میخواستم برای اضافه کردن پشتیبانی از VBA "گزینه 1" بود. صدا نیست بیش از حد دشوار است، بنابراین من سعی کردم به باز کردن صفحه گسترده من دوباره و دوباره به کشتن همه چیز را از خط فرمان.
بعضی چیز درست بود و من قادر به اجرای VBA با وجود سازگاری وعده داده شده است.
بنابراین من تصمیم به رفتن کند. مهم نیست که چند بار، من می توانم ماکرو را اجرا کنید وقتی که باز کردم فایل اکسل بومی. بنابراین من تصمیم گرفتم برای باز کردن فایل اکسل با ماکروها غیر فعال است. که اجازه باز کردن صفحه گسترده، اما هیچ کس کار. که من پیدا کردم که به طور خودکار OOoCalc پشتیبانی VBA "گزینه 1" را به ماژول اضافه شده بود.
فایل را تحت عنوان. ODS را نجات داد و با قادر ساختن ماکرو دوباره شروع کرد به اشکال زدایی. در این زمان، اشتباهات در flood.They نمی آمد آمد در یک زمان و از آن برای اشکالزدایی آسان تر بود.
مجموعه ای از خطاهای مربوط به متغیر های که در بیانیه صریح و روشن کم ندارد. VBA در اکسل آمرزنده در دست زدن به varaibles بدون اظهارات تار مناسب تر به نظر می رسید. اما OOO محاسبه آن را دوست ندارم. بنابراین من به پایان رسید تا با اضافه کردن چند اظهارات کم برای برخی از متغیرها است.
مجموعه ای از اشتباهات بود با نام UDF اکسل. OOO محاسبه دوست دارد برای دیدن توابع با حروف بزرگ استناد می شود. بنابراین اگر شما می خواهم حروف در اکسل استفاده می شود، آنها را نشان می دهد تا به عنوان اشتباهات. این می تواند به راحتی با استفاده از قابلیت پیدا کردن و جایگزین ثابت شده است.
فقط با این کارها ثابت، کاملا جدید است. فایل ODS من کار می کرد. سپس آن را نجات داد. xls و دوباره باز XLS. و همه چیز هنوز هم مشغول به کار بود. گرچه مستندات محاسبه OOO هنوز هم می گوید که تمام ویژگی های VBA پشتیبانی می شوند، VBA خوبی اجرا می شود در OOoCalc برای محاسبات مهندسی عملی است. بنابراین در حال حاضر زمان برای من از ایجاد تغییر.
حالا اگر شما مشکلات، در گرفتن کد VBA خود را به در OOO محاسبه کار نمی داد تا به زودی.

پست های مرتبط:


















































Rakesh
07. نوامبر، 2009
سلام،
من سعی کردم انجام چیزی که تو ذکر کرده اند، اما هنوز هم آن کار نمی کند.
اگر SHEET1.CELLS (7، 4) = "" ها یا SHEET1.CELLS (9، 4) = "" ها یا SHEET1.CELLS (10، 4) = "
در این خط من گرفتن اموال یا روش یافت نشد.
کریشنان
09. نوامبر، 2009
نحو است که به وضوح اشتباه است که من می توانید ببینید.
پس اگر شخص کلمات کلیدی مورد استفاده قرار گیرد. نه.
جیمز
07. بهمن، 2010
ingnoring rems
چگونه شما در OOO؟؟ من کار نتواند خارج OOO - PLS من آغاز شده؟
رم کلمات زیر ()
"رم
ماکرو REM واژه ها
ماکرو REM 2010/07/02 توسط مالک ثبت
"رم
رم صفحه کلید میانبر: CTRL + W
"رم
رم کم NumWords به عنوان عدد صحیح
WordLength رم کم نور به عنوان عدد صحیح
تعداد REM کم نور به عنوان عدد صحیح
رم کم Count2 به عنوان عدد صحیح
رم کم Lcase به عنوان عدد صحیح
رم
کلمه REM کم نور به عنوان عبارات مورد
رم کم MixedWord به عنوان رشته
نامه REM کم نور به عنوان عبارات مورد
رم
برگه REM ("واژه"). فعال
رم
wordRange تنظیم REM = برگه ("واژه") محدوده ("A1: A500").
رم NumWords = Application.WorksheetFunction.CountA (wordRange)
رم
رم برای تعداد = 1 برای NumWords
رم WordLength = لن (سلول (تعداد، 1))
رم
رم
رم 'Application.EnableSound = False
رم
= واقعی 'Application.EnableSound رم
رم ورد = سلول (تعداد، 1)
سلول رم (تعداد، 1). فعال
ActiveCell.Characters رم (1، 3). PhoneticCharacters = ورد
رم MixedWord = ""
رم برای Count2 = 1 برای WordLength
رم نامه = متوسط (سلول (تعداد، 1)، Count2 1)
Application.Speech.Speak رم (نامه)
رم Lcase = دور (RND)
رم
رم
رم اگر Lcase = 1 و صعودی (نامه)> = 97 سپس نامه = CHR (صعودی (نامه) - 32)
رم
رم MixedWord = MixedWord + نامه
رم بعد Count2
سلول رم (1، 5) = MixedWord
رم
پیام REM تار، عنوان، به طور پیش فرض، MyValue
رم پیام = "میمون آماده؟
رم TITLE = "برتری بازی املا.
رم پیش فرض = "YES"
رم MyValue = InputBox (پیغام، عنوان، به طور پیش فرض)
رم
رم
رم برای Count2 = 1 برای WordLength
رم نامه = متوسط (سلول (تعداد، 1)، Count2 1)
در رم Application.Speech.Speak (نامه)
رم بعد Count2
در رم Application.Speech.Speak (ورد)
رم
رم اگر MyValue "بله" سپس
رم Application.Speech.Speak ("pooey غلط - که وارد کرده اید)
رم WordLength = LEN (MyValue)
رم برای Count2 = 1 برای WordLength
رم نامه = میانه (MyValue Count2، 1)
در رم Application.Speech.Speak (نامه)
رم بعد Count2
در رم Application.Speech.Speak (MyValue)
پایان REM اگر
رم
رم
تعداد REM آینده
رم
رم
رم پایان بخشها
رم