Using Visual Basic For Applications And Visual Basic 6 With ArcGIS. What’s The Story?
This is a question that I have been getting ask a lot over the last few weeks. With ArcGIS 9.3.1 and ArcGIS 9.4 being showcased at the ESRI Developer Summit 2009, users have been wanting to know what the future support of Visual Basic for Applications (VBA) and Visual Basic 6 (VB6) in ArcGIS is.
The EDN Team has posted some information about the future of these.
Visual Basic 6 Support
This development environment is fully tested, documented, and supported for use with ArcGIS through version 9.3.1.
The v9.3.1 release will include a version of the VB6 Software Developer Kit (SDK) for both ArcGIS Desktop and ArcGIS Engine. For the past few years Microsoft has been phasing out support for VB6, finally considering it unsupported as of 2008. Due to this, ESRI will not be releasing a VB6 SDK nor supporting VB6 at the ArcGIS 9.4 release. We continue to encourage users and developers to migrate their projects and code to more recent versions of Microsoft Visual Studio which use the .NET Framework
So for ArcGIS through to ArcGIS 9.3.1, Visual Basic 6 is fully supported. For ArcGIS 9.4, Visual Basic 6 will now longer be supported. Your code might work but the Visual Basic 6 SDK nor technical support services will be available.
Visual Basic for Applications Support
For about 12 years now since version 8.0, ArcGIS Desktop users have been able to take advantage of the embedded VBA Editor to write macros, code modules, etc. The status of VBA going forward is this. VBA is fully supported through ArcGIS Desktop version 9.3.1, however developers are encouraged to use supported versions of Microsoft Visual Studio when extending the ArcGIS Desktop applications. When ArcGIS 9.4 is released, VBA will no longer be recommended for use, however it will still be available in order to support legacy code and applications.
As above for ArcGIS through to ArcGIS 9.3.1, VBA is included and fully supported. For ArcGIS 9.4, Visual Basic for Applications will be available if needed. It will be fully supported BUT not recommended.
What about your code? Have a read at the full post on the EDN Team Blog here: http://blogs.esri.com/dev/. This talks about the support for Visual Basic 6 and Visual Basic for Applications and what you can do with your existing code.
I would encourage existing users to start migrating their projects and code to using the .NET framework. When ArcGIS 9.4 comes around, your code and projects will be better compatible.


so Jay, does this mean there will be no such thing as a ‘customised MXD’ with VBA code in 9.4.
If you want to write some code to customise ArcMap then you have to write a DLL?
Ha! Nice joke… you had me worried for a while.