Other Development Issues


You need to keep several other issues in mind when developing an application - especially if you don't know exactly who will be using the application. If you're developing an application that will have widespread use (a shareware application, for example), you have no way of knowing how the application will be used, what type of system it will run on, or what other software will be running concurrently.

The user 's installed version of Excel

With every new release of Excel, the issue of compatibility rears its head. As I write this, Excel 2007 has just been released - yet many large corporations are still using Excel 2000 and some use even earlier versions.

Unfortunately, there is no guarantee that an application developed for, say, Excel 2000 will work perfectly with later versions of Excel. If you need your application to work with a variety of Excel versions, the best approach is to work with the lowest version - and then test it thoroughly with all other versions.

Things get even more complicated when you consider Excel's sub-versions. Microsoft distributes service releases (SRs) to correct problems. For example, users might have the original Excel 2000, Excel 2000 with SR-1, or Excel 2000 with SR-2. And it gets even more complicated with Excel 2003. Excel 2007 has a quite a few known problems, and it's likely that at least some of them will be corrected in a future service release.

CROSS-REFERENCE  

I discuss compatibility issues in Chapter 26.

Language issues

Consider yourself very fortunate if all your end users have the English language version of Excel. Non-English versions of Excel aren't always 100-percent compatible, so that means additional testing on your part. In addition, keep in mind that two users can both be using the English language version of Excel yet use different Windows regional settings. In some cases, you may need to be aware of potential problems.

CROSS-REFERENCE  

I briefly discuss language issues in Chapter 26.

System speed

You're probably a fairly advanced computer user and tend to keep your hardware reasonably up to date. In other words, you have a fairly powerful system that is probably better than the average user's system. In some cases, you'll know exactly what hardware the end users of your applications are using. If so, it's vitally important that you test your application on that system. A procedure that executes almost instantaneously on your system may take several seconds on another system. In the world of computers, several seconds may be unacceptable.

Tip  

When you gain more experience with VBA, you'll discover that there are ways to get the job done, and there are ways to get the job done fast. It's a good idea to get into the habit of coding for speed. Other chapters in this book will certainly help you out in this area.

Video modes

As you probably know, users' video displays vary widely. A video resolution of 1024 — 768 is most common, but many systems are set up with an 800 — 600 display. Higher resolution displays and even dual displays are becoming increasingly common. Just because you have a super-high-resolution monitor, you can't assume that everyone else does.

Video resolution can be a problem if your application relies on specific information being displayed on a single screen. For example, if you develop an input screen that uses 1280 — 1024 mode, users with a 1024 — 768 display will not be able to see the whole input screen without scrolling or zooming. Also, it's important to realize that a restored (that is, not maximized or minimized) workbook is displayed at its previous window size and position. In the extreme case, it's possible that a window saved by using a high-resolution display may be completely off the screen when opened on a system running in a lower resolution.

Unfortunately, there's no way to automatically scale things so that they look the same regardless of the display resolution. In some cases, you can zoom the worksheet (using the Zoom control in the status bar), but doing so reliably may be difficult. Unless you're certain of the video resolution that the users of your application will use, you should probably design your application so it works with the lowest common denominator - 800 — 600 mode.

As you will learn later in the book (see Chapter 10), it's possible to determine the user's video resolution by using Windows API calls from VBA. In some cases, you may want to programmatically adjust things depending on the user's video resolution.




Excel 2007 Power Programming with VBA
Excel 2007 Power Programming with VBA (Mr. Spreadsheets Bookshelf)
ISBN: 0470044012
EAN: 2147483647
Year: 2007
Pages: 319

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net