VBA Notes for Professionals book

    Amazing collection of free programming books

    Collecting
    Free
    Amazing collection of free programming books

    The Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow. Text content is released under Creative Commons BY-SA. See credits at the end of this book whom contributed to the various chapters. Images may be copyright of their respective owners unless otherwise specified

    Book created for educational purposes and is not affiliated with group(s), company(s) nor Stack Overflow. All trademarks belong to their respective company owners

    https://goalkicker.com/

    Content

    1-1Content list
    1-2About
    1-3Chapter 1: Getting started with VBA
    1-4Section 1.1: Accessing the Visual Basic Editor in Microsoft Oce
    1-5Section 1.2: Debugging
    1-6Section 1.3: First Module and Hello World
    1-7Chapter 2: Comments
    1-8Section 2.1: Apostrophe Comments
    1-9Section 2.2: REM Comments
    1-10Chapter 3: String Literals - Escaping, non-printable characters and line-continuations
    1-11Section 3.1: Escaping the " character
    1-12Section 3.2: Assigning long string literals
    1-13Section 3.3: Using VBA string constants
    1-14Chapter 4: VBA Option Keyword
    1-15Section 4.1: Option Explicit
    1-16Section 4.2: Option Base {0 | 1}
    1-17Section 4.3: Option Compare {Binary | Text | Database}
    1-18Chapter 5: Declaring Variables
    1-19Section 5.1: Type Hints
    1-20Section 5.2: Variables
    1-21Section 5.3: Constants (Const)
    1-22Section 5.4: Declaring Fixed-Length Strings
    1-23Section 5.5: When to use a Static variable
    1-24Section 5.6: Implicit And Explicit Declaration
    1-25Section 5.7: Access Modifiers
    1-26Chapter 6: Declaring and assigning strings
    1-27Section 6.1: Assignment to and from a byte array
    1-28Section 6.2: Declare a string constant
    1-29Section 6.3: Declare a variable-width string variable
    1-30Section 6.4: Declare and assign a fixed-width string
    1-31Section 6.5: Declare and assign a string array
    1-32Section 6.6: Assign specific characters within a string using Mid statement
    1-33Chapter 7: Concatenating strings
    1-34Section 7.1: Concatenate an array of strings using the Join function
    1-35Section 7.2: Concatenate strings using the & operator
    1-36Chapter 8: Frequently used string manipulation
    1-37Section 8.1: String manipulation frequently used examples
    1-38Chapter 9: Substrings
    1-39Section 9.1: Use Left or Left$ to get the 3 left-most characters in a string
    1-40Section 9.2: Use Right or Right$ to get the 3 right-most characters in a string
    1-41Section 9.3: Use Mid or Mid$ to get specific characters from within a string
    1-42Section 9.4: Use Trim to get a copy of the string without any leading or trailing spaces
    1-43Chapter 10: Searching within strings for the presence of substrings
    1-44Section 10.1: Use InStr to determine if a string contains a substring
    1-45Section 10.2: Use InStrRev to find the position of the last instance of a substring
    1-46Section 10.3: Use InStr to find the position of the first instance of a substring
    1-47Chapter 11: Assigning strings with repeated characters
    1-48Section 11.1: Use the String function to assign a string with n repeated characters
    1-49Section 11.2: Use the String and Space functions to assign an n-character string
    1-50Chapter 12: Measuring the length of strings
    1-51Section 12.1: Use the Len function to determine the number of characters in a string
    1-52Section 12.2: Use the LenB function to determine the number of bytes in a string
    1-53Section 12.3: Prefer `If Len(myString) = 0 Then` over `If myString = "" Then`
    1-54Chapter 13: Converting other types to strings
    1-55Section 13.1: Use CStr to convert a numeric type to a string
    1-56Section 13.2: Use Format to convert and format a numeric type as a string
    1-57Section 13.3: Use StrConv to convert a byte-array of single-byte characters to a string
    1-58Section 13.4: Implicitly convert a byte array of multi-byte-characters to a string
    1-59Chapter 14: Date Time Manipulation
    1-60Section 14.1: Calendar
    1-61Section 14.2: Base functions
    1-62Section 14.3: Extraction functions
    1-63Section 14.4: Calculation functions
    1-64Section 14.5: Conversion and Creation
    1-65Chapter 15: Data Types and Limits
    1-66Section 15.1: Variant
    1-67Section 15.2: Boolean
    1-68Section 15.3: String
    1-69Section 15.4: Byte
    1-70Section 15.5: Currency
    1-71Section 15.6: Decimal
    1-72Section 15.7: Integer
    1-73Section 15.8: Long
    1-74Section 15.9: Single
    1-75Section 15.10: Double
    1-76Section 15.11: Date
    1-77Section 15.12: LongLong
    1-78Section 15.13: LongPtr
    1-79Chapter 16: Naming Conventions
    1-80Section 16.1: Variable Names
    1-81Section 16.2: Procedure Names
    1-82Chapter 17: Data Structures
    1-83Section 17.1: Linked List
    1-84Section 17.2: Binary Tree
    1-85Chapter 18: Arrays
    1-86Section 18.1: Multidimensional Arrays
    1-87Section 18.2: Dynamic Arrays (Array Resizing and Dynamic Handling)
    1-88Section 18.3: Jagged Arrays (Arrays of Arrays)
    1-89Section 18.4: Declaring an Array in VBA
    1-90Section 18.5: Use of Split to create an array from a string
    1-91Section 18.6: Iterating elements of an array
    1-92Chapter 19: Copying, returning and passing arrays
    1-93Section 19.1: Passing Arrays to Proceedures
    1-94Section 19.2: Copying Arrays
    1-95Section 19.3: Returning Arrays from Functions
    1-96Chapter 20: Collections
    1-97Section 20.1: Getting the Item Count of a Collection
    1-98Section 20.2: Determining if a Key or Item Exists in a Collection
    1-99Section 20.3: Adding Items to a Collection
    1-100Section 20.4: Removing Items From a Collection
    1-101Section 20.5: Retrieving Items From a Collection
    1-102Section 20.6: Clearing All Items From a Collection
    1-103Chapter 21: Operators
    1-104Section 21.1: Concatenation Operators
    1-105Section 21.2: Comparison Operators
    1-106Section 21.3: Bitwise \ Logical Operators
    1-107Section 21.4: Mathematical Operators
    1-108Chapter 22: Sorting
    1-109Section 22.1: Algorithm Implementation - Quick Sort on a One-Dimensional Array
    1-110Section 22.2: Using the Excel Library to Sort a One-Dimensional Array
    1-111Chapter 23: Flow control structures
    1-112Section 23.1: For loop
    1-113Section 23.2: Select Case
    1-114Section 23.3: For Each loop
    1-115Section 23.4: Do loop
    1-116Section 23.5: While loop
    1-117Chapter 24: Passing Arguments ByRef or ByVal
    1-118Section 24.1: Passing Simple Variables ByRef And ByVal
    1-119Section 24.2: ByRef
    1-120Section 24.3: ByVal
    1-121Chapter 25: Scripting.FileSystemObject
    1-122Section 25.1: Retrieve only the path from a file path
    1-123Section 25.2: Retrieve just the extension from a file name
    1-124Section 25.3: Recursively enumerate folders and files
    1-125Section 25.4: Strip file extension from a file name
    1-126Section 25.5: Enumerate files in a directory using FileSystemObject
    1-127Section 25.6: Creating a FileSystemObject
    1-128Section 25.7: Reading a text file using a FileSystemObject
    1-129Section 25.8: Creating a text file with FileSystemObject
    1-130Section 25.9: Using FSO.BuildPath to build a Full Path from folder path and file name
    1-131Section 25.10: Writing to an existing file with FileSystemObject
    1-132Chapter 26: Working With Files and Directories Without Using FileSystemObject
    1-133Section 26.1: Determining If Folders and Files Exist
    1-134Section 26.2: Creating and Deleting File Folders
    1-135Chapter 27: Reading 2GB+ files in binary in VBA and File Hashes
    1-136Section 27.1: This have to be in a Class module, examples later referred as "Random"
    1-137Section 27.2: Code for Calculating File Hash in a Standard module
    1-138Section 27.3: Calculating all Files Hash from a root Folder
    1-139Chapter 28: Creating a procedure
    1-140Section 28.1: Introduction to procedures
    1-141Section 28.2: Function With Examples
    1-142Chapter 29: Procedure Calls
    1-143Section 29.1: This is confusing. Why not just always use parentheses?
    1-144Section 29.2: Implicit Call Syntax
    1-145Section 29.3: Optional Arguments
    1-146Section 29.4: Explicit Call Syntax
    1-147Section 29.5: Return Values
    1-148Chapter 30: Conditional Compilation
    1-149Section 30.1: Changing code behavior at compile time
    1-150Section 30.2: Using Declare Imports that work on all versions of Oce
    1-151Chapter 31: Object-Oriented VBA
    1-152Section 31.1: Abstraction
    1-153Section 31.2: Encapsulation
    1-154Section 31.3: Polymorphism
    1-155Chapter 32: Creating a Custom Class
    1-156Section 32.1: Adding a Property to a Class
    1-157Section 32.2: Class module scope, instancing and re-use
    1-158Section 32.3: Adding Functionality to a Class
    1-159Chapter 33: Interfaces
    1-160Section 33.1: Multiple Interfaces in One Class - Flyable and Swimable
    1-161Section 33.2: Simple Interface - Flyable
    1-162Chapter 34: Recursion
    1-163Section 34.1: Factorials
    1-164Section 34.2: Folder Recursion
    1-165Chapter 35: Events
    1-166Section 35.1: Sources and Handlers
    1-167Section 35.2: Passing data back to the event source
    1-168Chapter 36: Scripting.Dictionary object
    1-169Section 36.1: Properties and Methods
    1-170Chapter 37: Working with ADO
    1-171Section 37.1: Making a connection to a data source
    1-172Section 37.2: Creating parameterized commands
    1-173Section 37.3: Retrieving records with a query
    1-174Section 37.4: Executing non-scalar functions
    1-175Chapter 38: Attributes
    1-176Section 38.1: VB_PredeclaredId
    1-177Section 38.2: VB_[Var]UserMemId
    1-178Section 38.3: VB_Exposed
    1-179Section 38.4: VB_Description
    1-180Section 38.5: VB_Name
    1-181Section 38.6: VB_GlobalNameSpace
    1-182Section 38.7: VB_Createable
    1-183Chapter 39: User Forms
    1-184Section 39.1: Best Practices
    1-185Section 39.2: Handling QueryClose
    1-186Chapter 40: CreateObject vs. GetObject
    1-187Section 40.1: Demonstrating GetObject and CreateObject
    1-188Chapter 41: Non-Latin Characters
    1-189Section 41.1: Non-Latin Text in VBA Code
    1-190Section 41.2: Non-Latin Identifiers and Language Coverage
    1-191Chapter 42: API Calls
    1-192Section 42.1: Mac APIs
    1-193Section 42.2: Get total monitors and screen resolution
    1-194Section 42.3: FTP and Regional APIs
    1-195Section 42.4: API declaration and usage
    1-196Section 42.5: Windows API - Dedicated Module (1 of 2)
    1-197Section 42.6: Windows API - Dedicated Module (2 of 2)
    1-198Chapter 43: Automation or Using other applications Libraries
    1-199Section 43.1: VBScript Regular Expressions
    1-200Section 43.2: Scripting File System Object
    1-201Section 43.3: Scripting Dictionary object
    1-202Section 43.4: Internet Explorer Object
    1-203Chapter 44: Macro security and signing of VBA-projects/-modules
    1-204Section 44.1: Create a valid digital self-signed certificate SELFCERT.EXE
    1-205Chapter 45: VBA Run-Time Errors
    1-206Section 45.1: Run-time error '6': Overflow
    1-207Section 45.2: Run-time error '9': Subscript out of range
    1-208Section 45.3: Run-time error '13': Type mismatch
    1-209Section 45.4: Run-time error '91': Object variable or With block variable not set
    1-210Section 45.5: Run-time error '20': Resume without error
    1-211Section 45.6: Run-time error '3': Return without GoSub
    1-212Chapter 46: Error Handling
    1-213Section 46.1: Avoiding error conditions
    1-214Section 46.2: Custom Errors
    1-215Section 46.3: Resume keyword
    1-216Section 46.4: On Error statement
    1-217Credits
    1-218You may also like

    FAQ

    您可以透過手機、平板或是電腦登入 HiSKIO 平台,在【我的學習】>【我的書籍】頁面,選擇想看的電子書。

    Recommendations

    Reviews

    | Collecting

    Sales Plans