Skip to content

okazaki112/VBA-Visual

Repository files navigation

English | 简体中文

VBA Visual Demo

VBA Visual Editor

Drag-and-drop VBA code generator for Excel automation

FeaturesInstallationUsageDevelopment

Electron Vue 3 TypeScript License


Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4 Screenshot 5

Features

  • Visual Block Programming - Drag and drop blocks to build VBA code visually
  • 7 Block Categories - Basic, Control Flow, Excel Operations, Data Processing, Interaction, File Operations, Advanced
  • Real-time Code Preview - See generated VBA code instantly with syntax highlighting
  • Project Management - Save, load, and manage your VBA projects
  • Native Desktop App - Built with Electron for cross-platform support
  • Modern UI - Clean and intuitive interface powered by Element Plus

Block Categories

Category Description
Basic Variable declaration, constants, assignments, comments
Control Flow If/Else, For loops, Do While, Select Case
Excel Operations Cell read/write, range selection, sheet operations, formulas
Data Processing String manipulation, math operations, date handling
Interaction MsgBox, InputBox, status bar
File Operations File dialogs, read/write files
Advanced Sub/Function definitions, error handling, arrays, dictionaries

Installation

Download Release

Download the latest release from the Releases page.

Build from Source

# Clone the repository
git clone https://github.com/your-username/vba-visual.git
cd vba-visual

# Install dependencies
pnpm install

# Build for production
pnpm build

Usage

  1. Create New Project - Start with a blank canvas
  2. Drag Blocks - Select blocks from the toolbox and drag to canvas
  3. Connect Blocks - Link blocks together to define program flow
  4. Configure Properties - Set block properties in the property panel
  5. Preview Code - View generated VBA code in real-time
  6. Export - Copy code or save project for later use

Development

# Install dependencies
pnpm install

# Start development server
pnpm dev

# Build application
pnpm build

# Lint code
pnpm lint

# Format code
pnpm format

Tech Stack

Technology Purpose
Electron Cross-platform desktop apps
Vue 3 Progressive JavaScript framework
TypeScript Type-safe JavaScript
Vite Next generation frontend tooling
AntV X6 Graph visualization engine
Element Plus Vue 3 UI component library
Monaco Editor Code editor
Pinia State management

Project Structure

vba-visual/
├── electron/           # Electron main process
│   ├── main/          # Main process entry
│   └── preload/       # Preload scripts
├── src/
│   ├── components/    # Vue components
│   │   ├── blocks/    # Block toolbox
│   │   ├── canvas/    # Canvas toolbar
│   │   ├── layout/    # Layout components
│   │   └── panel/     # Property & code panels
│   ├── stores/        # Pinia stores
│   ├── types/         # TypeScript definitions
│   ├── utils/         # Utilities
│   └── views/         # Page views
└── public/            # Static assets

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.


Acknowledgments


Made with ❤️ by VBA Visual Team

About

VBA 可视化编辑器是一款基于积木块编程的 VBA 代码生成工具。通过拖拽积木块并连接它们,您可以直观地构建程序逻辑,软件会自动生成对应的 VBA 代码。无需记忆复杂的语法,即可快速开发 Excel 自动化脚本。

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors