当前位置:首页>Excel>Excel VBA 数据可视化:渐变色填充实现

Excel VBA 数据可视化:渐变色填充实现

  • 2026-04-06 11:58:19
Excel VBA 数据可视化:渐变色填充实现

Excel VBA 数据可视化:渐变色填充实现

问题引入

在处理包含时间维度的数据表时,如何快速识别出紧急程度

本文介绍一种纯 VBA 实现的方案:以指定日期为基准,自动为日期列生成红色渐变填充,越接近基准日颜色越浅,越早的日期颜色越深。全程可控、可定制,且易于集成到现有工具中。


核心思路

实现这个需求需要解决三个关键问题:

  1. 动态定位列:表格结构可能变化,不能硬编码列号
  2. 日期有效性校验:跳过空值、错误值、非日期内容
  3. 颜色插值计算:在浅红与正红之间平滑过渡

下面给出完整实现,包含辅助函数和测试用例。


完整代码实现

主程序:应用渐变填充

Option Explicit'====================================================='  工作表日期列红色渐变填充'  第2行为基准日期 → 最浅红;越早越接近正红 RGB(255,0,0)'  自动跳过空值、错误值、非日期数据'=====================================================Sub ApplyDateGradient()    Dim ws As Worksheet    Dim lastRow As Long, currentRow As Long    Dim baseDate As Date, earliestDate As Date    Dim targetCell As Range, cellValue As Variant    Dim targetCol As Integer, colLetter As String    Dim dateSpan As Double, colorRatio As Double    ' 初始化工作表    Set ws = ThisWorkbook.Worksheets("总表")    ' 动态查找"到期日"所在列(第1行是标题行)    targetCol = FindColumnByHeader(ws, 1, "到期日")    If targetCol = 0 Then        MsgBox "未找到目标列,请检查表头", vbExclamation        Exit Sub    End If    ' 确定数据边界    lastRow = ws.Cells(ws.Rows.Count, targetCol).End(xlUp).Row    If lastRow < 3 Then Exit Sub  ' 数据不足,无需处理    ' 获取基准日期(第2行)    baseDate = ws.Cells(2, targetCol).Value    earliestDate = baseDate    ' 扫描有效日期,确定最早日期(用于计算渐变范围)    For currentRow = 3 To lastRow        cellValue = ws.Cells(currentRow, targetCol).Value        If IsValidDate(cellValue) Then            If CDate(cellValue) < earliestDate Then                earliestDate = CDate(cellValue)            End If        End If    Next currentRow    ' 计算日期跨度,避免除零    dateSpan = baseDate - earliestDate    If dateSpan <= 0 Then dateSpan = 1    ' 获取列字母标识(用于Range操作)    colLetter = ColumnNumberToLetter(targetCol)    ' 清除历史格式    ws.Range(colLetter & "3:" & colLetter & lastRow).Interior.ColorIndex = xlNone    ' 逐行应用颜色    For currentRow = 3 To lastRow        Set targetCell = ws.Cells(currentRow, targetCol)        cellValue = targetCell.Value        If IsValidDate(cellValue) Then            Dim currentDate As Date            currentDate = CDate(cellValue)            ' 只处理不晚于基准日的日期            If currentDate <= baseDate Then                ' 计算颜色比例:0=基准日(浅红), 1=最早日期(正红)                colorRatio = (baseDate - currentDate) / dateSpan                targetCell.Interior.Color = CalculateRedGradient(colorRatio)            End If        End If    Next currentRow    ' 完成提示(如有自定义MsgBox类可替换)    MsgBox "日期渐变填充完成!", vbInformation, "处理结果"End Sub

辅助函数模块

'====================================================='  根据表头文本查找列号(不区分大小写)'  参数:ws-工作表, headerRow-标题行号, headerText-查找文本'  返回:列号(未找到返回0)'=====================================================Private Function FindColumnByHeader(ws As Worksheet, _                                   headerRow As Long, _                                   headerText As String) As Integer    Dim col As Integer    Dim foundCell As Range    Set foundCell = ws.Rows(headerRow).Find(What:=headerText, _                                           LookIn:=xlValues, _                                           LookAt:=xlWhole, _                                           MatchCase:=False)    If Not foundCell Is Nothing Then        FindColumnByHeader = foundCell.Column    Else        FindColumnByHeader = 0    End IfEnd Function'====================================================='  列号转字母(1→A, 27→AA)'=====================================================Private Function ColumnNumberToLetter(colNum As Integer) As String    Dim result As String    Dim remainder As Integer    Do While colNum > 0        remainder = (colNum - 1) Mod 26        result = Chr(65 + remainder) & result        colNum = (colNum - 1) \ 26    Loop    ColumnNumberToLetter = resultEnd Function'====================================================='  验证是否为有效日期(排除错误值、空值、非日期)'=====================================================Private Function IsValidDate(val As Variant) As Boolean    On Error Resume Next    IsValidDate = False    If IsEmpty(val) Then Exit Function    If IsError(val) Then Exit Function    If Not IsDate(val) Then Exit Function    ' 额外检查:排除明显错误的日期(如0或负数转换的日期)    Dim testDate As Date    testDate = CDate(val)    If Year(testDate) < 1900 Or Year(testDate) > 9999 Then Exit Function    IsValidDate = True    On Error GoTo 0End Function'====================================================='  计算红色渐变值'  参数:ratio ∈ [0,1] — 0返回浅红(255,220,220), 1返回正红(255,0,0)'=====================================================Private Function CalculateRedGradient(ratio As Double) As Long    ' 限制ratio在有效范围内    If ratio < 0 Then ratio = 0    If ratio > 1 Then ratio = 1    Dim red As Long, green As Long, blue As Long    red = 255    green = 220 - Int(ratio * 220)  ' 220 → 0    blue = 220 - Int(ratio * 220)   ' 220 → 0    CalculateRedGradient = RGB(red, green, blue)End Function

关键设计解析

1. 动态列定位的鲁棒性

硬编码列号(如 Columns("Y"))在表格结构调整时极易出错。通过 FindColumnByHeader 实现按名称查找,即使插入或删除列也能正确定位。

实际项目中,建议将表头文本提取为常量或配置项,便于维护。

2. 日期有效性多层校验

IsValidDate 函数不仅检查 IsDate,还排除了:

3. 颜色插值的数学基础

渐变算法采用线性插值(Linear Interpolation):

其中  代表 RGB 通道值。本例中固定 Red=255,仅对 Green 和 Blue 通道进行插值,从 220 递减至 0。

如需扩展为其他色系(如绿-黄-红风险等级),可修改 CalculateRedGradient 为通用函数,接收起始色和结束色参数。


进阶扩展:从单一功能到通用框架

扩展1:支持多列批量处理

Sub BatchApplyGradient()    Dim targetColumns As Variant    Dim i As Integer    ' 定义需要处理的列标题数组    targetColumns = Array("到期日", "开始日期", "审核日期")    For i = LBound(targetColumns) To UBound(targetColumns)        ' 复用主逻辑,传入不同列参数        ApplyGradientToColumn CStr(targetColumns(i))    Next iEnd Sub

扩展2:集成到工作簿事件

将渐变更新绑定到 Worksheet_Change 事件,实现实时刷新

Private Sub Worksheet_Change(ByVal Target As Range)    Dim watchRange As Range    ' 仅监控日期列变化,避免全表刷新影响性能    Set watchRange = Me.Range("Y:Y")    If Not Intersect(Target, watchRange) Is Nothing Then        Application.EnableEvents = False        ApplyDateGradient  ' 调用主程序        Application.EnableEvents = True    End IfEnd Sub

注意:事件驱动方式在大数据量时需谨慎,建议改用按钮触发或定时刷新。

扩展3:导出为可复用类模块

对于复杂项目,建议将功能封装为类(Class Module):

' 类名:DateGradientFormatter' 属性:Worksheet, HeaderText, BaseDateRow, ColorStart, ColorEnd' 方法:ApplyFormatting, ClearFormatting' 使用示例:Dim fmt As New DateGradientFormatterWith fmt    Set .TargetSheet = ThisWorkbook.Worksheets("总表")    .HeaderText = "到期日"    .ApplyFormattingEnd With

测试用例

创建如下测试数据验证代码:

行号
到期日
预期效果
2
2024-12-31
基准行(无填充或最浅红)
3
2024-12-31
最浅红 RGB(255,220,220)
4
2024-12-25
中等红色
5
2024-01-01
最深红 RGB(255,0,0)
6
(空)
无填充
7
"N/A"
无填充
8
2025-01-01
无填充(晚于基准日)

验证要点

  1. 空值和文本未被染色
  2. 晚于基准日的日期保持白色
  3. 颜色渐变平滑,无跳变

性能优化建议

数据规模
优化策略
< 1000 行
当前方案直接可用
1000-5000 行
关闭屏幕刷新 Application.ScreenUpdating = False
> 5000 行
改用数组批量处理,减少单元格读写次数
超大数据
考虑使用条件格式公式替代 VBA,或分页处理

延伸

可以找一些专业配色方案,改进渐变色函数,避免由于个人原因或者显示器问题导致渐变出现视觉偏差。

结语

通过 VBA 实现自定义渐变填充,突破了条件格式的静态限制,为复杂业务场景提供了灵活的视觉呈现方案。关键在于解耦定位逻辑、校验逻辑与渲染逻辑,使代码具备复用性和可维护性。

不用复制本页面代码,因为代码较多,公众号的排版可能导致细微的语法错误或粘贴后的代码中带特殊符号,百度网盘上传有完整可运行的文件

通过网盘分享的文件渐变色 红.xlsm

链接https://pan.baidu.com/s/1vayIe3d-DvxIFE-NmfjxKw?pwd=easc

如果这篇文章对你有帮助,欢迎关注我的公众号 "VBA爱好者",有问题也欢迎在评论区留言交流。


最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-07 20:25:17 HTTP/2.0 GET : https://h.sjds.net/a/477085.html
  2. 运行时间 : 0.335902s [ 吞吐率:2.98req/s ] 内存消耗:4,400.04kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=8a8fdbc75c2ecbb09ecbfdb24d8e5c94
  1. /yingpanguazai/ssd/ssd1/www/h.sjds.net/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/h.sjds.net/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/h.sjds.net/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/h.sjds.net/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/h.sjds.net/runtime/temp/ad153693ed39fba6d1bda2fe72512cde.php ( 12.06 KB )
  140. /yingpanguazai/ssd/ssd1/www/h.sjds.net/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000776s ] mysql:host=127.0.0.1;port=3306;dbname=h_sjds;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001311s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000578s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.063412s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001651s ]
  6. SELECT * FROM `set` [ RunTime:0.001862s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001625s ]
  8. SELECT * FROM `article` WHERE `id` = 477085 LIMIT 1 [ RunTime:0.031514s ]
  9. UPDATE `article` SET `lasttime` = 1775564717 WHERE `id` = 477085 [ RunTime:0.001454s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 65 LIMIT 1 [ RunTime:0.002544s ]
  11. SELECT * FROM `article` WHERE `id` < 477085 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.002655s ]
  12. SELECT * FROM `article` WHERE `id` > 477085 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.003558s ]
  13. SELECT * FROM `article` WHERE `id` < 477085 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.014560s ]
  14. SELECT * FROM `article` WHERE `id` < 477085 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.019109s ]
  15. SELECT * FROM `article` WHERE `id` < 477085 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.021095s ]
0.337379s