Python办公自动化教程 - 第7章 综合实战案例 - 企业销售管理系统

第7章 综合实战案例 - 企业销售管理系统

7.1 本章学习目标

通过本章学习,你将掌握:

  1. 项目规划:如何分析和设计一个完整的Excel项目
  2. 模块化开发:将复杂系统拆分为独立模块
  3. 知识综合:综合运用前6章所有知识点
  4. 实战技巧:真实业务场景中的开发技巧

7.2 为什么要做综合实战?

🌟 生活类比:你已经学会了游泳的各种动作(基础技能),现在要在开放水域中完成一次长距离游泳(综合应用)。只有将各种技能融会贯通,才能应对真实的挑战。

综合实战的价值:

  • 检验学习成果:验证是否真正掌握了所学知识
  • 培养工程思维:学会从需求分析到系统交付的完整流程
  • 提升解决问题能力:面对复杂问题,学会拆解和规划
  • 积累项目经验:拥有可以展示的实际项目案例

7.3 项目概述

🌟 项目背景:假设你是一家电子产品公司的数据分析师,需要为销售部门开发一套完整的销售数据管理系统。这套系统需要包含数据录入、统计分析、可视化展示等功能。

📋 功能需求

  1. 员工信息管理:记录销售人员的基本信息
  2. 产品销售数据:记录每月各产品的销售情况
  3. 业绩统计分析:自动计算业绩指标
  4. 可视化报表:图表展示销售趋势
  5. 数据验证:确保数据录入的准确性

🎯 学习目标

  • 综合运用前6章所学知识
  • 学习如何规划和组织大型Excel项目
  • 掌握模块化编程思想
  • 理解实际业务场景中的数据处理流程

7.4 系统架构设计

企业销售管理系统
员工信息表
销售数据表
业绩统计表
可视化报表
系统配置
员工基础信息
部门/职位
联系方式
月度销售记录
产品分类
销售额/数量
个人业绩汇总
部门业绩对比
产品销量排名
销售趋势图
业绩对比图
产品占比图
数据验证
下拉列表
公式计算

7.5 实战案例:完整销售管理系统

📁 代码路径 : openpyxl-tutorial/chapter_07_project/sales_management_system.py

📝 开发思路

  1. 创建主工作簿
  2. 创建员工信息表(含数据验证)
  3. 创建销售数据录入表
  4. 创建业绩统计分析表(使用公式)
  5. 创建可视化报表(图表)
  6. 设置打印格式和样式
  7. 保存完整系统文件
python 复制代码
# -*- coding: utf-8 -*-
"""
================================================================================
第7章/企业销售管理系统 - 综合实战案例
================================================================================
项目描述:
    这是一套完整的企业销售管理系统,包含员工信息管理、销售数据录入、
    业绩统计分析和可视化报表等功能。综合运用openpyxl的各种特性。

开发思路:
1. 创建主工作簿
2. 创建员工信息表(含数据验证)
3. 创建销售数据录入表
4. 创建业绩统计分析表(使用公式)
5. 创建可视化报表(图表)
6. 设置打印格式和样式
7. 保存完整系统文件

涉及知识点:
- 工作簿/工作表操作(第1、3章)
- 单元格样式与格式化(第2章)
- 公式与函数(第4章)
- 图表创建(第5章)
- 数据验证、超链接、打印设置(第6章)
================================================================================
"""

# 从openpyxl导入Workbook类
from openpyxl import Workbook

# 导入样式相关类
from openpyxl.styles import Font, PatternFill, Alignment, Border, Side

# 导入图表相关类
from openpyxl.chart import BarChart, LineChart, PieChart, Reference

# 导入数据验证类
from openpyxl.worksheet.datavalidation import DataValidation

# 导入工具函数
from openpyxl.utils import get_column_letter

# 导入os模块处理文件路径
import os


def create_sales_management_system():
  """
  创建完整的企业销售管理系统
  这是一个综合实战案例,展示如何运用所有学到的知识
  """
  wb = Workbook()

  # ==================== 1. 创建员工信息表 ====================
  ws_employees = wb.active
  ws_employees.title = "员工信息"
  _create_employee_sheet(ws_employees)

  # ==================== 2. 创建销售数据表 ====================
  ws_sales = wb.create_sheet("销售数据")
  _create_sales_sheet(ws_sales)

  # ==================== 3. 创建业绩统计表 ====================
  ws_stats = wb.create_sheet("业绩统计")
  _create_statistics_sheet(ws_stats, ws_employees, ws_sales)

  # ==================== 4. 创建可视化报表 ====================
  ws_charts = wb.create_sheet("可视化报表")
  _create_chart_sheet(ws_charts, ws_stats)

  # ==================== 5. 保存文件 ====================
  output_dir = os.path.join(os.path.dirname(__file__), "output")
  os.makedirs(output_dir, exist_ok=True)
  file_path = os.path.join(output_dir, "企业销售管理系统.xlsx")
  wb.save(file_path)

  print("=" * 70)
  print("🎉 企业销售管理系统创建成功!")
  print("=" * 70)
  print(f"📁 文件路径: {file_path}")
  print(f"\n📊 系统包含以下工作表:")
  for idx, sheet_name in enumerate(wb.sheetnames, 1):
    print(f"   {idx}. {sheet_name}")
  print(f"\n✨ 功能特点:")
  print("   • 员工信息管理(含数据验证)")
  print("   • 销售数据录入(下拉列表)")
  print("   • 业绩自动统计(公式计算)")
  print("   • 可视化图表展示")
  print("   • 专业样式设计")

  wb.close()
  return file_path


def _create_employee_sheet(ws):
  """
  创建员工信息表
  包含:工号、姓名、部门、职位、入职日期、联系方式
  """
  # 标题
  ws.merge_cells('A1:G1')
  title_cell = ws['A1']
  title_cell.value = '员工信息表'
  title_cell.font = Font(name='微软雅黑', size=18, bold=True, color='FFFFFF')
  title_cell.fill = PatternFill(start_color='4472C4', fill_type='solid')
  title_cell.alignment = Alignment(horizontal='center', vertical='center')
  ws.row_dimensions[1].height = 40

  # 表头
  headers = ['工号', '姓名', '部门', '职位', '入职日期', '联系方式', '状态']
  header_fill = PatternFill(start_color='5B9BD5', fill_type='solid')
  header_font = Font(name='微软雅黑', size=11, bold=True, color='FFFFFF')

  for col, header in enumerate(headers, 1):
    cell = ws.cell(row=3, column=col, value=header)
    cell.font = header_font
    cell.fill = header_fill
    cell.alignment = Alignment(horizontal='center', vertical='center')

  ws.row_dimensions[3].height = 25

  # 员工数据
  employees = [
    ['E001', '张三', '技术部', '销售工程师', '2020-03-15', '13800138001', '在职'],
    ['E002', '李四', '技术部', '高级销售', '2019-06-20', '13800138002', '在职'],
    ['E003', '王五', '市场部', '市场经理', '2018-01-10', '13800138003', '在职'],
    ['E004', '赵六', '市场部', '销售专员', '2021-09-05', '13800138004', '在职'],
    ['E005', '钱七', '销售部', '销售主管', '2017-11-22', '13800138005', '在职'],
    ['E006', '孙八', '人事部', 'HR专员', '2022-04-18', '13800138006', '在职'],
  ]

  for row_idx, emp_data in enumerate(employees, start=4):
    for col_idx, value in enumerate(emp_data, 1):
      cell = ws.cell(row=row_idx, column=col_idx, value=value)
      cell.alignment = Alignment(horizontal='center', vertical='center')

  # 设置列宽
  column_widths = [10, 10, 12, 14, 12, 14, 8]
  for i, width in enumerate(column_widths, 1):
    ws.column_dimensions[get_column_letter(i)].width = width

  # 添加数据验证(部门下拉列表)
  dv_dept = DataValidation(
    type="list",
    formula1='"技术部,市场部,销售部,人事部,财务部"',
    allow_blank=True
  )
  dv_dept.prompt = '请选择部门'
  ws.add_data_validation(dv_dept)
  for row in range(4, 20):
    dv_dept.add(ws.cell(row=row, column=3))

  # 添加数据验证(状态下拉列表)
  dv_status = DataValidation(
    type="list",
    formula1='"在职,离职,休假"',
    allow_blank=True
  )
  ws.add_data_validation(dv_status)
  for row in range(4, 20):
    dv_status.add(ws.cell(row=row, column=7))


def _create_sales_sheet(ws):
  """
  创建销售数据录入表
  包含:日期、员工、产品、数量、单价、金额
  """
  # 标题
  ws.merge_cells('A1:H1')
  title_cell = ws['A1']
  title_cell.value = '销售数据录入表'
  title_cell.font = Font(name='微软雅黑', size=18, bold=True, color='FFFFFF')
  title_cell.fill = PatternFill(start_color='70AD47', fill_type='solid')
  title_cell.alignment = Alignment(horizontal='center', vertical='center')
  ws.row_dimensions[1].height = 40

  # 表头
  headers = ['记录编号', '日期', '员工工号', '员工姓名', '产品', '数量', '单价', '金额']
  header_fill = PatternFill(start_color='C5E0B4', fill_type='solid')
  header_font = Font(name='微软雅黑', size=11, bold=True)

  for col, header in enumerate(headers, 1):
    cell = ws.cell(row=3, column=col, value=header)
    cell.font = header_font
    cell.fill = header_fill
    cell.alignment = Alignment(horizontal='center', vertical='center')

  # 销售数据
  sales_data = [
    ['S001', '2024-01-15', 'E001', '张三', '笔记本电脑', 5, 5000],
    ['S002', '2024-01-16', 'E002', '李四', '手机', 10, 3000],
    ['S003', '2024-01-17', 'E001', '张三', '平板电脑', 8, 2500],
    ['S004', '2024-01-18', 'E003', '王五', '笔记本电脑', 3, 5000],
    ['S005', '2024-01-20', 'E004', '赵六', '手机', 15, 3000],
    ['S006', '2024-01-22', 'E005', '钱七', '智能手表', 20, 1500],
    ['S007', '2024-01-25', 'E001', '张三', '手机', 12, 3000],
    ['S008', '2024-01-28', 'E002', '李四', '平板电脑', 6, 2500],
  ]

  for row_idx, sale_data in enumerate(sales_data, start=4):
    for col_idx, value in enumerate(sale_data, 1):
      ws.cell(row=row_idx, column=col_idx, value=value)

    # 金额 = 数量 * 单价
    ws.cell(row=row_idx, column=8, value=f'=F{row_idx}*G{row_idx}')
    ws.cell(row=row_idx, column=8).number_format = '#,##0.00'

  # 设置列宽
  column_widths = [12, 12, 12, 10, 14, 8, 10, 12]
  for i, width in enumerate(column_widths, 1):
    ws.column_dimensions[get_column_letter(i)].width = width

  # 添加数据验证(产品下拉列表)
  dv_product = DataValidation(
    type="list",
    formula1='"笔记本电脑,手机,平板电脑,智能手表,耳机"',
    allow_blank=True
  )
  ws.add_data_validation(dv_product)
  for row in range(4, 20):
    dv_product.add(ws.cell(row=row, column=5))

  # 启用自动筛选
  ws.auto_filter.ref = ws.dimensions


def _create_statistics_sheet(ws, ws_employees, ws_sales):
  """
  创建业绩统计分析表
  使用公式引用其他工作表的数据
  """
  # 标题
  ws.merge_cells('A1:F1')
  title_cell = ws['A1']
  title_cell.value = '业绩统计分析'
  title_cell.font = Font(name='微软雅黑', size=18, bold=True, color='FFFFFF')
  title_cell.fill = PatternFill(start_color='FFC000', fill_type='solid')
  title_cell.alignment = Alignment(horizontal='center', vertical='center')
  ws.row_dimensions[1].height = 40

  # 个人业绩汇总
  ws['A3'] = '个人业绩汇总'
  ws['A3'].font = Font(size=14, bold=True)

  headers = ['员工工号', '员工姓名', '销售单数', '销售数量', '销售金额']
  header_fill = PatternFill(start_color='FFF2CC', fill_type='solid')
  header_font = Font(bold=True)

  for col, header in enumerate(headers, 1):
    cell = ws.cell(row=4, column=col, value=header)
    cell.font = header_font
    cell.fill = header_fill
    cell.alignment = Alignment(horizontal='center')

  # 员工列表(简化处理,实际应该动态获取)
  employees = ['E001', 'E002', 'E003', 'E004', 'E005']
  employee_names = ['张三', '李四', '王五', '赵六', '钱七']

  for idx, (emp_id, emp_name) in enumerate(zip(employees, employee_names), start=5):
    ws.cell(row=idx, column=1, value=emp_id)
    ws.cell(row=idx, column=2, value=emp_name)

    # 使用COUNTIF统计销售单数
    ws.cell(row=idx, column=3, value=f'=COUNTIF(销售数据!C:C,A{idx})')

    # 使用SUMIF统计销售数量
    ws.cell(row=idx, column=4, value=f'=SUMIF(销售数据!C:C,A{idx},销售数据!F:F)')

    # 使用SUMIF统计销售金额
    ws.cell(row=idx, column=5, value=f'=SUMIF(销售数据!C:C,A{idx},销售数据!H:H)')

    # 设置数字格式
    ws.cell(row=idx, column=5).number_format = '#,##0.00'

  # 合计行
  total_row = len(employees) + 5
  ws.cell(row=total_row, column=2, value='合计').font = Font(bold=True)
  ws.cell(row=total_row, column=3, value=f'=SUM(C5:C{total_row - 1})')
  ws.cell(row=total_row, column=4, value=f'=SUM(D5:D{total_row - 1})')
  ws.cell(row=total_row, column=5, value=f'=SUM(E5:E{total_row - 1})')
  ws.cell(row=total_row, column=5).number_format = '#,##0.00'

  for col in range(1, 6):
    ws.cell(row=total_row, column=col).fill = PatternFill(start_color='E2EFDA', fill_type='solid')

  # 产品销售统计
  ws['A12'] = '产品销售统计'
  ws['A12'].font = Font(size=14, bold=True)

  product_headers = ['产品', '销售数量', '销售金额', '平均单价']
  for col, header in enumerate(product_headers, 1):
    cell = ws.cell(row=13, column=col, value=header)
    cell.font = header_font
    cell.fill = header_fill
    cell.alignment = Alignment(horizontal='center')

  products = ['笔记本电脑', '手机', '平板电脑', '智能手表']
  for idx, product in enumerate(products, start=14):
    ws.cell(row=idx, column=1, value=product)

    # 统计各产品销售数量
    ws.cell(row=idx, column=2, value=f'=SUMIF(销售数据!E:E,A{idx},销售数据!F:F)')

    # 统计各产品销售金额
    ws.cell(row=idx, column=3, value=f'=SUMIF(销售数据!E:E,A{idx},销售数据!H:H)')
    ws.cell(row=idx, column=3).number_format = '#,##0.00'

    # 计算平均单价
    ws.cell(row=idx, column=4, value=f'=C{idx}/B{idx}')
    ws.cell(row=idx, column=4).number_format = '#,##0.00'

  # 设置列宽
  for col in range(1, 6):
    ws.column_dimensions[get_column_letter(col)].width = 14


def _create_chart_sheet(ws, ws_stats):
  """
  创建可视化报表工作表
  包含多种图表展示
  """
  # 标题
  ws.merge_cells('A1:K1')
  title_cell = ws['A1']
  title_cell.value = '销售数据可视化报表'
  title_cell.font = Font(name='微软雅黑', size=18, bold=True, color='FFFFFF')
  title_cell.fill = PatternFill(start_color='7030A0', fill_type='solid')
  title_cell.alignment = Alignment(horizontal='center', vertical='center')
  ws.row_dimensions[1].height = 40

  # 复制统计数据到本工作表用于图表
  ws['A3'] = '员工姓名'
  ws['B3'] = '销售金额'
  ws['A3'].font = Font(bold=True)
  ws['B3'].font = Font(bold=True)

  employees = ['张三', '李四', '王五', '赵六', '钱七']
  sales_amounts = [47500, 45000, 15000, 45000, 30000]

  for idx, (name, amount) in enumerate(zip(employees, sales_amounts), start=4):
    ws.cell(row=idx, column=1, value=name)
    ws.cell(row=idx, column=2, value=amount)

  # 创建柱状图(员工业绩对比)
  bar_chart = BarChart()
  bar_chart.type = "col"
  bar_chart.title = "员工业绩对比"
  bar_chart.style = 10
  bar_chart.y_axis.title = '销售金额(元)'

  data = Reference(ws, min_col=2, min_row=3, max_row=8)
  categories = Reference(ws, min_col=1, min_row=4, max_row=8)

  bar_chart.add_data(data, titles_from_data=True)
  bar_chart.set_categories(categories)
  bar_chart.width = 15
  bar_chart.height = 10

  ws.add_chart(bar_chart, "D3")

  # 产品数据
  ws['A12'] = '产品'
  ws['B12'] = '销售数量'
  ws['A12'].font = Font(bold=True)
  ws['B12'].font = Font(bold=True)

  products = ['笔记本电脑', '手机', '平板电脑', '智能手表']
  quantities = [8, 37, 14, 20]

  for idx, (product, qty) in enumerate(zip(products, quantities), start=13):
    ws.cell(row=idx, column=1, value=product)
    ws.cell(row=idx, column=2, value=qty)

  # 创建饼图(产品销售占比)
  pie_chart = PieChart()
  pie_chart.title = "产品销售占比"

  labels = Reference(ws, min_col=1, min_row=13, max_row=16)
  data = Reference(ws, min_col=2, min_row=12, max_row=16)

  pie_chart.add_data(data, titles_from_data=True)
  pie_chart.set_categories(labels)

  # 添加百分比标签
  from openpyxl.chart.label import DataLabelList
  pie_chart.dataLabels = DataLabelList()
  pie_chart.dataLabels.showPercent = True

  ws.add_chart(pie_chart, "D20")

  # 设置列宽
  ws.column_dimensions['A'].width = 12
  ws.column_dimensions['B'].width = 12


# 如果这个脚本被直接运行(不是被导入),则执行以下代码
if __name__ == "__main__":
  create_sales_management_system()

7.6 📊 知识图谱

企业销售管理系统架构
主程序

create_sales_management_system
员工信息表
销售数据表
业绩统计表
可视化报表
_create_employee_sheet
数据验证

DataValidation
部门下拉列表
状态下拉列表
_create_sales_sheet
销售记录录入
金额公式

=F*G
产品下拉列表
自动筛选
_create_statistics_sheet
个人业绩汇总

COUNTIF/SUMIF
产品销售统计

SUMIF
跨表引用

销售数据!C:C
_create_chart_sheet
柱状图

BarChart
饼图

PieChart
数据标签

DataLabelList
样式设计
Font字体
PatternFill填充
Alignment对齐
Border边框

7.7 📊 代码执行时序图

文件系统 可视化报表 业绩统计表 销售数据表 员工信息表 Workbook类 主程序 用户 文件系统 可视化报表 业绩统计表 销售数据表 员工信息表 Workbook类 主程序 用户 运行脚本 创建工作簿 返回wb对象 _create_employee_sheet(ws) 合并单元格A1:G1 设置标题样式 填充员工数据 添加部门下拉验证 添加状态下拉验证 员工表创建完成 _create_sales_sheet(ws) 设置标题和表头 填充销售数据 添加金额公式=F*G 添加产品下拉验证 启用自动筛选 销售表创建完成 _create_statistics_sheet(ws) 创建个人业绩汇总 COUNTIF统计单数 SUMIF统计数量/金额 创建产品销售统计 添加合计行 统计表创建完成 _create_chart_sheet(ws) 复制统计数据 创建柱状图 创建饼图+百分比标签 图表表创建完成 os.makedirs创建目录 wb.save保存 写入Excel文件 保存成功 打印成功信息

7.8 🖨️ 代码运行效果

运行上述代码后,会生成一个名为 企业销售管理系统.xlsx 的Excel文件,包含4个工作表:




7.9 📊 系统功能概览

工作表 功能 涉及技术
员工信息 员工基础信息管理 数据验证、样式、合并单元格
销售数据 销售记录录入 公式计算、自动筛选、下拉列表
业绩统计 业绩分析汇总 跨表公式、SUMIF、COUNTIF
可视化报表 图表展示 柱状图、饼图、数据标签

7.10 📋 员工信息表结构

工号 姓名 部门 职位 入职日期 联系方式 状态
E001 张三 技术部 销售工程师 2020-03-15 13800138001 在职
E002 李四 技术部 高级销售 2019-06-20 13800138002 在职
... ... ... ... ... ... ...

数据验证:

  • 部门列:下拉列表(技术部、市场部、销售部、人事部、财务部)
  • 状态列:下拉列表(在职、离职、休假)

7.11📋 销售数据表结构

记录编号 日期 员工工号 员工姓名 产品 数量 单价 金额
S001 2024-01-15 E001 张三 笔记本电脑 5 5000 =F*G
S002 2024-01-16 E002 李四 手机 10 3000 =F*G
... ... ... ... ... ... ... ...

功能特点:

  • 金额自动计算:=数量*单价
  • 产品下拉列表:笔记本电脑、手机、平板电脑、智能手表、耳机
  • 自动筛选:表头启用筛选功能

7.12 📊 业绩统计表公式

个人业绩汇总:

指标 公式示例
销售单数 =COUNTIF(销售数据!C:C,A5)
销售数量 =SUMIF(销售数据!C:C,A5,销售数据!F:F)
销售金额 =SUMIF(销售数据!C:C,A5,销售数据!H:H)

产品销售统计:

指标 公式示例
销售数量 =SUMIF(销售数据!E:E,A14,销售数据!F:F)
销售金额 =SUMIF(销售数据!E:E,A14,销售数据!H:H)
平均单价 =销售金额/销售数量

7.13 📈 可视化报表图表

柱状图 - 员工业绩对比:

  • 类型:垂直柱状图
  • 数据:员工姓名 vs 销售金额
  • 样式:style=10

饼图 - 产品销售占比:

  • 类型:饼图
  • 数据:产品名称 vs 销售数量
  • 标签:显示百分比

7.14 📁 生成的文件结构

复制代码
openpyxl_tutorial/
├── chapter_07_project/
│   └── sales_management_system.py    # 演示脚本
└── output/
    └── 企业销售管理系统.xlsx            # 生成的Excel文件
        ├── 员工信息表
        ├── 销售数据表
        ├── 业绩统计表
        └── 可视化报表

7.15 🎯 涉及知识点总结

章节 知识点 应用场景
第1章 Workbook/Worksheet 创建工作簿和多个工作表
第2章 Font/PatternFill/Alignment/Border 标题样式、表头样式、单元格对齐
第3章 多工作表管理 员工表、销售表、统计表、图表表
第4章 SUMIF/COUNTIF公式 业绩统计、销售汇总
第5章 BarChart/PieChart 员工业绩对比图、产品占比图
第6章 DataValidation 部门、状态、产品下拉列表
第6章 auto_filter 销售数据表筛选功能

7.16 本章知识总结 📝

第7章 综合实战
需求分析
系统设计
模块开发
功能测试
项目交付
明确功能需求
确定数据结构
工作表规划
数据关系设计
员工管理模块
销售录入模块
统计分析模块
可视化模块
数据验证测试
公式计算验证
图表展示检查
代码文档化
使用说明

项目亮点回顾

模块 使用技术 功能说明
员工信息表 数据验证、样式 员工基础信息管理,部门/状态下拉选择
销售数据表 公式计算、筛选 销售记录录入,自动计算金额
业绩统计表 跨表公式、汇总 SUMIF/COUNTIF统计分析
可视化报表 图表、样式 柱状图、饼图展示业绩

涉及知识点总结

  • 第1章:Workbook/Worksheet基础操作
  • 第2章:Font、PatternFill、Alignment、Border样式
  • 第3章:多工作表管理、数据组织
  • 第4章:SUMIF、COUNTIF公式、跨表引用
  • 第5章:BarChart、PieChart图表创建
  • 第6章:DataValidation数据验证、自动筛选

学习建议

  1. 动手实践:按照代码自己实现一遍
  2. 修改扩展:尝试添加新功能(如部门业绩统计)
  3. 解决bug:故意制造一些问题,练习调试
  4. 优化代码:思考如何使代码更简洁、更高效

后续学习方向

  • 学习pandas进行更复杂的数据处理
  • 了解数据库操作,实现数据持久化
  • 学习GUI开发,制作图形界面
  • 探索Excel与其他系统的数据交互

教程总结

恭喜你完成了整个openpyxl教程的学习!🎉

学习路径回顾

第0章

环境准备
第1章

基础入门
第2章

样式美化
第3章

工作表操作
第4章

公式函数
第5章

图表创建
第6章

高级应用
第7章

综合实战

核心技能清单

基础操作 :创建、读取、保存Excel文件

数据处理 :单元格读写、数据类型、遍历

样式美化 :字体、填充、边框、对齐、数字格式

工作表管理 :创建、删除、重命名、合并单元格

公式函数 :SUM、AVERAGE、IF、VLOOKUP等

图表创建 :柱状图、折线图、饼图、组合图

高级功能 :数据验证、超链接、批注、打印设置

项目实战:完整系统开发流程

继续深造资源

祝你编程愉快,Excel处理从此变得轻松! 🚀

相关推荐
Hou'2 小时前
从0到1的C语言传奇之路
c语言·开发语言
不知名的老吴3 小时前
返回None还是空集合?防御式编程的关键细节
开发语言·python
迈巴赫车主3 小时前
蓝桥杯3500阶乘求和java
java·开发语言·数据结构·职场和发展·蓝桥杯
小菜鸡桃蛋狗3 小时前
C++——string(上)
开发语言·c++
李昊哲小课3 小时前
Python办公自动化教程 - 第5章 图表创建 - 让数据可视化
python·信息可视化·数据分析·数据可视化·openpyxl
chushiyunen3 小时前
python pygame实现贪食蛇
开发语言·python·pygame
Dream of maid3 小时前
Python-基础2(流程控制)
python
身如柳絮随风扬3 小时前
Lambda、方法引用与Stream流完全指南
java·开发语言
jinanwuhuaguo4 小时前
人工智能的进化阶梯:AI、ANI、AGI与ASI的核心区别与深度剖析
开发语言·人工智能·agi·openclaw