Visual Basic for Applications
Visual Basic for Applications (VBA) is an implementation of Microsoft's event-driven programming language Visual Basic 6, which was declared legacy in 2008, and is an associated integrated development environment (IDE). Although pre-.NET Visual Basic is no longer supported or updated by Microsoft, the VBA programming language was upgraded in 2010 with the introduction of Visual Basic for Applications 7 in Microsoft Office applications. As of 2020, VBA has held its position as "most dreaded" language for developers for 2 years, according to some who participated in surveys undertaken by Stack Overflow. (The most dreaded language for 2018 was Visual Basic 6).
Visual Basic for Applications enables building user-defined functions (UDFs), automating processes and accessing Windows API and other low-level functionality through dynamic-link libraries (DLLs). It supersedes and expands on the abilities of earlier application-specific macro programming languages such as Word's WordBASIC. It can be used to control many aspects of the host application, including manipulating user interface features, such as menus and toolbars, and working with custom user forms or dialog boxes.
As its name suggests, VBA is closely related to Visual Basic and uses the Visual Basic Runtime Library. However, VBA code normally can only run within a host application, rather than as a standalone program. VBA can, however, control one application from another using OLE Automation. For example, VBA can automatically create a Microsoft Word report from Microsoft Excel data that Excel collects automatically from polled sensors. VBA can use, but not create, ActiveX/COM DLLs, and later versions add support for class modules.
VBA is built into most Microsoft Office applications, including Office for Mac OS X (except version 2008), and other Microsoft applications, including Microsoft MapPoint and Microsoft Visio. VBA is also implemented, at least partially, in applications published by companies other than Microsoft, including ArcGIS, AutoCAD, CorelDraw, LibreOffice, Reflection, SolidWorks, WordPerfect, and UNICOM System Architect (which supports VBA 7.1).
Sandwell is a metropolitan borough of the West Midlands county in England. The borough is named after the Sandwell Priory, and spans a densely populated part of the West Midlands conurbation. According to Sandwell Metropolitan Borough Council, the borough comprises the six amalgamated towns of Oldbury, Rowley Regis, Smethwick, Tipton, Wednesbury, and West Bromwich, although these places consist of numerous smaller settlements and localities. Sandwell's Strategic Town Centre is designated as West Bromwich, the largest town in the borough, while Sandwell Council House (the headquarters of the local authority) is situated in Oldbury.
Bordering Sandwell is the City of Birmingham to the east, the Metropolitan Borough of Dudley to the south and west, the Metropolitan Borough of Walsall to the north, and the City of Wolverhampton to the north-west. Spanning the borough are the parliamentary constituencies of West Bromwich West, West Bromwich East, Warley, and part of Halesowen and Rowley Regis, which crosses into the Dudley borough.
At the 2011 census, the borough had a population of 309,000 and an area of 86 square kilometres (33 sq mi).