在好例子网,分享、交流、成长!
您当前所在位置:首页 → Python 开发实例 → 常用Python方法 → Excel公式可视化生成器:查找引用/统计计算/文本处理/日期时间/逻辑判断分类查询、参数说明、一键复制公式

Excel公式可视化生成器:查找引用/统计计算/文本处理/日期时间/逻辑判断分类查询、参数说明、一键复制公式

常用Python方法

下载此实例

实例介绍

Instance Introduction

一款基于 Python + Tkinter 的 Excel 公式学习与查询工具。内置 5 大分类(查找引用、统计计算、文本处理、日期时间、逻辑判断、数据验证)、18+ 常用函数(VLOOKUP/XLOOKUP/INDEX+MATCH/SUMIF/IF等),包含完整语法格式、参数解释和实用示例。点击即可查看详细信息,一键复制公式到剪贴板,直接粘贴到 Excel 使用。

Core Code

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Excel公式可视化生成器
按场景分类常用函数、参数说明与实例、一键复制公式到剪贴板
"""
import tkinter as tk
from tkinter import ttk, messagebox, scrolledtext
import platform

# 中文字体配置(Linux用文泉驿,Windows用微软雅黑)
CHINESE_FONT = "WenQuanYi Zen Hei" if platform.system() == "Linux" else "Microsoft YaHei"

# 公式数据库:分类 -> [(函数名, 语法, 说明, 示例, [参数列表])]
FORMULA_DB = {
    "查找引用": [
        ("VLOOKUP", "=VLOOKUP(查找值, 范围, 列号, 匹配方式)",
         "在表格首列查找指定值,返回同行其他列的值",
         "=VLOOKUP(A2, D:F, 2, 0)  → 在D:F范围查找A2,返回第2列",
         [("查找值", "要查找的目标值,如 A2"),
          ("范围", "查找区域,如 D:F 或 $D$1:$F$100"),
          ("列号", "返回第几列的值,从1开始计数"),
          ("匹配方式", "0=精确匹配, 1=近似匹配")]),
        ("XLOOKUP", "=XLOOKUP(查找值, 查找列, 返回列, [未找到值], [匹配模式])",
         "VLOOKUP升级版,支持向左查找、默认精确匹配",
         "=XLOOKUP(A2, D:D, F:F, \"未找到\")  → 在D列找A2,返回F列对应值",
         [("查找值", "要查找的目标值"),
          ("查找列", "在哪一列查找"),
          ("返回列", "返回哪一列的值"),
          ("未找到值", "找不到时显示的默认值"),
          ("匹配模式", "0=精确, -1=精确或次小, 1=精确或次大")]),
        ("INDEX+MATCH", "=INDEX(返回范围, MATCH(查找值, 查找范围, 0))",
         "万能查找组合,支持任意方向查找,比VLOOKUP更灵活",
         "=INDEX(C:C, MATCH(A2, B:B, 0))  → 在B列找A2,返回C列对应值",
         [("返回范围", "要返回结果的范围"),
          ("查找值", "查找目标"),
          ("查找范围", "在哪查找"),
          ("匹配类型", "0=精确匹配")]),
    ],
    "统计计算": [
        ("SUMIF", "=SUMIF(条件范围, 条件, [求和范围])",
         "对满足条件的单元格求和",
         "=SUMIF(A:A, \"北京\", C:C)  → 对A列为\"北京\"的C列值求和",
         [("条件范围", "判断条件的区域"),
          ("条件", "筛选条件,如 \">100\" 或 \"北京\""),
          ("求和范围", "实际求和的区域(可选)")]),
        ("COUNTIFS", "=COUNTIFS(范围1, 条件1, 范围2, 条件2, ...)",
         "多条件计数,统计同时满足多个条件的行数",
         "=COUNTIFS(A:A, \"男\", B:B, \">60\")  → 统计男性且B>60的行数",
         [("范围1", "第一个条件范围"),
          ("条件1", "第一个条件"),
          ("范围2", "第二个条件范围"),
          ("条件2", "第二个条件")]),
        ("AVERAGEIF", "=AVERAGEIF(条件范围, 条件, [平均值范围])",
         "对满足条件的单元格求平均值",
         "=AVERAGEIF(A:A, \"销售部\", C:C)  → 销售部C列平均值",
         [("条件范围", "判断条件的区域"),
          ("条件", "筛选条件"),
          ("平均值范围", "实际求平均的范围(可选)")]),
    ],
    "文本处理": [
        ("TEXT", "=TEXT(值, 格式代码)",
         "将数值转换为指定格式的文本",
         "=TEXT(A1, \"yyyy-mm-dd\")  → 2026-01-15\n=TEXT(B1, \"0.00%\")  → 85.20%",
         [("值", "要转换的数值或日期"),
          ("格式代码", "格式模板,如 yyyy-mm-dd, 0.00, #,##0")]),
        ("LEFT/RIGHT/MID", "=LEFT(文本, 字符数) / =RIGHT(文本, 字符数) / =MID(文本, 起始位, 字符数)",
         "从文本左/右/中间提取指定数量的字符",
         "=LEFT(\"Hello\", 3) → Hel\n=MID(\"20260115\", 5, 4) → 0115",
         [("文本", "原始文本或单元格引用"),
          ("字符数", "要提取的字符个数"),
          ("起始位", "MID专用,从第几个字符开始")]),
        ("CONCATENATE", "=CONCATENATE(文本1, 文本2, ...) 或 =文本1&文本2",
         "将多个文本合并为一个",
         "=A1&\"-\"&B1  → 将A1和B1用短横线连接\n=CONCATENATE(A1, B1, C1)",
         [("文本1", "第一个文本或单元格"),
          ("文本2", "第二个文本或单元格"),
          ("...", "可继续添加更多文本")]),
    ],
    "日期时间": [

Use Cases

  • Excel beginners quickly look up common function usage
  • Office workers reference VLOOKUP/IF/SUMIF formulas daily
  • Data analysts recall function syntax and parameters
  • Teaching training to demonstrate Excel formula classification system

标签:

实例下载地址

Excel公式可视化生成器:查找引用/统计计算/文本处理/日期时间/逻辑判断分类查询、参数说明、一键复制公式

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享!

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警