Slashdot is powered by your submissions, so send in your scoop


Forgot your password?
Microsoft Businesses Software Apple

VBA Will Return To Mac Office 113

An anonymous reader sends a pointer to Erik Schwiebert's blog — he's the design lead of Microsoft's Mac Business Unit — where he announces that Visual Basic will be returning to Mac Office. Not in Office 2008, which started shipping earlier this year. We discussed the announced death of VBA in Mac Office 17 months back. Schwiebert says that the interval to the next version of Mac Office will be shorter than 4 years but isn't able to offer any more detail. The blog post calls for feedback on what features of VBA and Windows interoperability are most important to people.
This discussion has been archived. No new comments can be posted.

VBA Will Return To Mac Office

Comments Filter:
  • Re:Wow (Score:3, Interesting)

    by Jellybob ( 597204 ) on Wednesday May 14, 2008 @08:23AM (#23401180) Journal
    That's ok, they don't actually have to port it anyway - the Mono project has already done that for them.

    I'm not convinced that .Net is the right tool for most users anyway

    If you've got an inhouse development team, or money to contract some development out, then using a real development environment makes a lot of sense, and the .Net interface allows some pretty powerful features to be added to Office.

    Your average Excel user doesn't want to sit down and learn a new language though, they just want their spreadsheets to work, and in most environments, that's the sort of person doing any "development".
  • Re:Wow (Score:5, Interesting)

    by Zelos ( 1050172 ) on Wednesday May 14, 2008 @08:35AM (#23401260)
    I think the reason they gave was that it was too hard to port the old Office 2004 VBA runtime from PPC to x86 code - the runtime was apparently an absolute mess that was tied very tightly to the ISA. Why they didn't write one portable VBA engine for Windows and Mac I don't know.

    Whether that's true or not I don't know, it's the old choice between assuming incompetence or malice I guess.
  • by ais523 ( 1172701 ) <ais523(524\)(525)x)> on Wednesday May 14, 2008 @08:38AM (#23401294)
    Wasn't it just a few weeks ago that the OpenOffice 3 announcements were made, including partial VBA support for the Mac version? Microsoft seem to be happy to drop VBA support from the Mac version to try to persuade people who rely on it to switch to Windows, but to add it back when that reason no longer applies, so as not to lose marketshare to the reason that it no longer applies... (And yes, there were other office suites that could do that beforehand, but businesses are at least likely to have heard of
  • by lancejjj ( 924211 ) on Wednesday May 14, 2008 @09:10AM (#23401598) Homepage
    There is simply no compelling reason for me or my organization to deploy the new version of Office - why spend thousands for new licenses (and associated deployment and support) when I can stick with the tried-and-true 2004 and just wait a couple years for "Office 2010"?

    I find that Office 2004 is quite a bit faster than Office 2008 on my Intel-based MacBook. I'm not sure what they did to it, but it isn't impressive in terms of performance. You'd think that converting from translated PPC code to native x86 code would be a huge performance advantage, but somehow the Microsoft managed to slow it down quite a bit.

    Oh, and Office 2008 has fewer features, like no VBA.

    What was Microsoft thinking during design and testing? Clearly they have totally lost focus and ability to release a decent product.
  • Re:Four years? (Score:5, Interesting)

    by random0xff ( 1062770 ) on Wednesday May 14, 2008 @09:22AM (#23401736)
    Does the Office department realise that Microsoft has a runtime on the Mac? It's called the Dynamic Language Runtime and it will run JavaScript, Ruby, Python and something called VBX (whatever that is). Wouldn't it be a better idea to use that and build libraries for it. There's already Office libraries for .NET so it seems the smartest thing to do. Of course, that would be awfully cross platform and that's a scray thing for Microsoft.
  • Re:Wow (Score:5, Interesting)

    by hey! ( 33014 ) on Wednesday May 14, 2008 @09:36AM (#23401928) Homepage Journal

    Why they didn't write one portable VBA engine for Windows and Mac I don't know.

    Probably because VBA was introduced around 1993, the same year the first Pentium (running at 60MHz) was introduced. The typical machine had a 486DX2 running a single instruction pipeline at 33MHz, and maybe 16-24MB of RAM. Oh, yes, and Windows 3.1, which is 16 bit and has all its 16 bit glory.

    Still, C code can be reasonably close to assembler in efficiency, especially if you profile and use assembler only in tight loops. It shouldn't be that hard on modern systems to cross compile to C against some kind of simple virtual machine.

    I'm guessing that the code probably makes a lot of direct Windows API calls without any framework or abstraction. This probably means that collectively the VBA code for MacOS and Windows is significantly larger than for Windows alone. If this is true Microsoft would have to port a lot of the Windows API to MacOS (nobody is better positioned to do this), or they have to do a rather massive refactoring. Since porting the API is undesirable for other reasons, and refactoring is desirable for others, I'm guessing they're planning on cleaning things up enough to make a Mac port viable.

  • Re:Wow (Score:3, Interesting)

    by Gazzonyx ( 982402 ) <scott DOT lovenberg AT gmail DOT com> on Wednesday May 14, 2008 @09:46AM (#23402112)
    I think the VBA engine is somewhat tightly tied to the win32 API and system DLLs. Most likely having a single engine would have been a complete mess as its a "middle layer" component, and has to interface the system and office beneath it and the window manager above it.

    Sometimes it's easier to just branch the code base than try to maintain too many interfaces and libraries with their own edge cases and corner cases. What would they do if two obscure bugs intersected such that the semantics of fixing one would necessarily break the other? They'd have to kludge around it and then maintain that kludge for the product life, and perhaps into other products and their lifetimes. This was probably a wise move, IMHO. Logic is more flexible than the code that supports it. I could be completely wrong about this, of course. Take it with a grain of salt.
  • Re:That is _so_ cool (Score:4, Interesting)

    by vertinox ( 846076 ) on Wednesday May 14, 2008 @09:58AM (#23402256)
    That is just _so_ cool. I'm absolutely dying to help my customers by creating cross-platform applications in VBA.

    *coughs* I've heard someone tell me once to never buy stock in a company that uses shared Excel files and VBA for their main accounting due to the fact it tends to often grow gross inaccuracies over time due to sloppy user work and lack of auditing actually cooks their books without anyone really knowing about it.

    Of course he was the person maintaining the VBA code so he might have been biased...
  • by aclarke ( 307017 ) <> on Wednesday May 14, 2008 @10:06AM (#23402358) Homepage
    No kidding. I'm actually a paid Office:Mac user (albeit a previous version) and I still use Neo Office. Other than being slow to load, it does everything I want it to, and it's free.

    Unless you have some special need for Microsoft Office that Neo Office doesn't meet, I don't see any reason to pay for Microsoft Office other than just not knowing any better.
  • Gee, thanks, Mac BU. (Score:3, Interesting)

    by caution live frogs ( 1196367 ) on Wednesday May 14, 2008 @10:19AM (#23402568)
    Since switching to using a Mac at work last summer, I've been pretty happy, except for the god-awful problems with Mac Office. It's my one remaining annoyance on OS X. Office 2004 was so slow on my Mac (a 2.4 ghz core duo MacBook Pro with 4 gigs of RAM) that opening any Word doc longer than four or five pages caused massive hiccups. Trying to open things that contained images or (god forbid) had "Track changes" enabled - well, forget it. When Office '08 was released I was happy - until I installed it.

    '04 might be slow, but '08 randomly causes hard system freezes (mouse responsive, but nothing else works - forces me to reboot). No real pattern to it, either. Has never happened unless an Office program is open. Missing VBA is not so bad for Word unless you count the subsequent loss of all plug-ins, including EndNote - which as a scientist I really can't live without. Not to mention the problems with Excel, which is where I assume 90% of the VBA complains have come from. So many Excel spreadsheets rely on macros to work properly. And the user interface? The changes in Office 08 might seem like improvements for anyone that has never used Office on Windows, but going from 07 at home to 08 at work makes me want to tear my hair out. The floating "toolbox" palette is horrible and unusable, but the floating, undockable Formula bar in Excel - how did that actually make it past quality control?

    The most damning thing about this all is that they are charging MORE for Mac Office than they are for Office 07 - more money for fewer programs (no OneNote, for example, no Access, no real Outlook compatibility - Entourage is not Outlook, thank god I don't have to use either, but many people need it). More money for what are essentially broken components (half the known issues with Office 08 are compatibility problems with 07, plus the loss of VBA that has caused so many problems). And now they are telling us that our problems will be solved, so long as we will just wait a few years and then hand them even more money?

    There are reasons I have NeoOffice installed, and 90% of those reasons are the idiotic decisions made by the Mac BU. As much as I like open source, I would be perfectly happy using Microsoft Office if they would deliver on the Mac the same functionality they offer on Windows - but if Microsoft won't deliver, my money is going elsewhere. I have a hard time thinking I'd be the only one making the same decision.
  • Re:Wow (Score:3, Interesting)

    by nine-times ( 778537 ) <> on Wednesday May 14, 2008 @10:24AM (#23402672) Homepage

    Why they didn't write one portable VBA engine for Windows and Mac I don't know.

    From what little I know, it seems like the team that develops Office for Windows and the team that develops Office for Mac are entirely separate, and don't work together. So the Mac team looks at the Windows version and ports over what features they can, but the Windows people don't do anything to make that process easy. So as a result, you don't get real Exchange support in Entourage, and you don't get VB support.

    It's also worth noting that the Mac team is either under-resourced or mentally retarded, as evidenced by stupid little incidents like the recent Intel Remote Desktop beta. Essentially they released a beta with an expiration date, and then didn't release a new beta before the expiration date. The software didn't stop working, but it stopped working properly. Their response to the problem was, "It still mostly works, and we'll release the final in a few months. Live with it."

  • by Ohio Calvinist ( 895750 ) on Wednesday May 14, 2008 @11:05AM (#23403350)
    I have to agree with a lot of the other posters in that Microsoft's only advantage was (is?) 100% compatibility with PC Office, which since Office 98 has slowly been chipped away. Office 98 was not only highly (if not 100%) compatible with Office for PC, but it was almost identical at the UI level. This was really nice for students in Mac schools because they could get the MS Office training to get a job someday rather than take Computer Applications 101 on Claris Works, because there are so many people that learn by contrete example (writing down steps) rather than computing concepts and general usage.

    However, in later versions, Office for Mac has become more uncompatible (Mac only stuff that doesn't port to PC, PC only stuff that doesn't port to Mac), that there really is no reason to pay the hefty MS pricetag over Open Even the "the UI is the same so our 'special' users can figure it out on a different platform" argument is gone.

    As much as I hate to say it, Macro compatibility was their *last* stride above the competition (aside from brand recognition) and without that MS Office Mac is really just one of many implementations that gives the "kind of works" compatibility competiting (free or commercial) products already give.
  • by rmcd ( 53236 ) * on Wednesday May 14, 2008 @11:09AM (#23403416)
    Out of curiousity, have you (or has anyone) actually seen *any* version of OpenOffice that will open and run spreadsheets with VBA? I keep hearing vague claims about VBA compatibility (what the heck is "partial VBA support"??), but every version of OO I've tried (including 3.0 beta for Windows) chokes on my VBA spreadsheets. I was able to port these spreadsheets to Starbasic leaving 90% of the code unchanged (and with a *lot* of help from the forums at But I have yet to see any reasonable out of the box compatibility.

    For the record, my spreadsheets primarily contain user-defined functions (and a few subroutines) that call built-in Excel functions that exist in OO (such as NormSInv), and they read and write to named cells. Not trivial, but not rocket science, as VBA goes.
  • by multiplexo ( 27356 ) on Wednesday May 14, 2008 @09:08PM (#23412602) Journal

    years. I know that this has been said before and that I'm not the first person to say it but I think that Microsoft is going to be in for rough times because of Vista and because of the speed of the PC hardware that has been released over the last six years.

    Five years ago I built my parents new PCs based upon AMD CPUs and ASUS motherboards and running Windows XP. Since then I have upgraded the RAM on their systems out to the max of 1.5Gb and they still run just fine, my Dad has a few newer games that are a bit slow, but applications such as Office, IE, FireFox, Adobe, TurboCAD, etc run just fine under XP. My laptop at work is almost four years old, I've had more memory installed and a larger hard drive but again, it works just fine with Office, etc under Windows XP. Newer hardware offers more bells and whistles but unless you're doing video work, or playing games a decent system put together in 2003 or 2004 will run XP just fine. No one I know on the Windows side of the IT world is looking forward to upgrading to Vista because in order to do so we'd have to junk a bunch of perfectly good systems to install an OS that brings no benefit in a business environment. Business users don't need Aero glass, they don't need Vista's multimedia features (because businesses feel that if you want to do cool multimedia stuff you should do it at home and not be fucking off and doing it at work), they don't need Vista's "improved" security because any business that has an IT department that's worth it's salary are already behind firewalls, scan all incoming e-mails for viruses, automatically install security upgrades on user desktops and laptops and otherwise check their networks for infected systems and because the help desk guys really don't want to spend their entire day answering questions inspired by Vista's UAC spamming end users with largely spurious security notifications.

    The only reason why anyone is buying Vista is because they have to. Dell just informed us today that as of tomorrow XP is no longer available as an OEM installed OS. You can still get it from Dell, but you're actually buying Vista with a "Downgrade Rights" license that allows you to install XP but with a Vista license. The "Downgrade Rights" program will be available until December 31st, 2010, so Microsoft will be able to say that they're selling lots and lots of copies of Vista when in reality many of these copies of Vista will actually be copies of XP sold under the "Downgrade Rights" program.

    Pause and think for a moment upon how fucked up this is. Microsoft came out with a new operating system that no one wants; they tried to force adoption of the new OS by end of lifing the old one, but there was so much push back that they first had to extend the end of life date and then had to compromise and come out with the "Downgrade Rights" program which basically says that they're selling XP until New Year's Eve, 2010. Microsoft is fucked because they couldn't just keep selling XP, if they did it would be an implicit admission on their part that Vista is a failure. Microsoft also can't just say to customers "Fuck you, we're not selling XP any more, if you need an OS it's Vista or the highway" because if they did business customers in search of new systems might just say "Fuck it. I'll try the highway then. I'll keep my XP systems running as long as I can (which given the current economic climate isn't a bad idea anyways) and when I hit the wall where they don't run any more look at buying Macs or running Linux on the desktop."

The human mind ordinarily operates at only ten percent of its capacity -- the rest is overhead for the operating system.