gpt4 book ai didi

excel - 直到最后一个单元格的单元格的内部颜色,其中包含一列中的数据

转载 作者:行者123 更新时间:2023-12-04 21:00:21 24 4
gpt4 key购买 nike

这是我的问题:

  • 我有一个带有 sheet2 整体数据和 sheet3 的 Excel 电子表格
    到 sheet8,数据基于从 sheet2 复制的年份。
  • 在每张表(Sheet3-8)中,每行(不包括第 1 行)中的值被添加
    和 D 列中每一行的总和。
  • 从第 2 行到第 D 列有内部颜色和粗体字体
    最后一行数据我使用了以下代码(例如
    表 3)。
  • 将使用 sheet2 中的命令按钮更新电子表格。
  • 当我在 VB 开发人员中单独运行代码时,有时它可以工作
    有时会导致运行时错误 1004。
  • 当我尝试使用按钮更新电子表格时,它总是
    导致错误。
  • {Sheet3.Range("D2", Cells(Rows.Count, "D").End(xlUp).Offset(-2, 0)).Interior.Color = RGB(255, 192, 0)}{Sheet3.Range("D2", Cells(Rows.Count, "D").End(xlUp).Offset(-2, 0)).Font.Bold=True}

    The full code is as shown below:

    {Sub YearlyForcast2011_2012()

    Sheet3.Columns("D").HorizontalAlignment = xlRight
    Dim j As Integer
    Dim lastrow2 As Long
    Dim sumrange As Long


    lastrow2 = Sheet3.Cells(Rows.Count, 1).End(xlUp).Row
    For j = 2 To lastrow2

    Sheet3.Cells(j, 4).Value = Sheet3.Cells(j, 5).Value + Sheet3.Cells(j, 6).Value + Sheet3.Cells(j, 7).Value + Sheet3.Cells(j, 8) + Sheet3.Cells(j, 9).Value + Sheet3.Cells(j, 10).Value + Sheet3.Cells(j, 11).Value + Sheet3.Cells(j, 12).Value + Sheet3.Cells(j, 13).Value + Sheet3.Cells(j, 14).Value + Sheet3.Cells(j, 15).Value + Sheet3.Cells(j, 16).Value

    Next j

    sumrange = Sheet3.Cells(Rows.Count, "D").End(xlUp).Row
    Sheet3.Range("D" & sumrange + 2).Formula = "=SUM(D2:D" & sumrange & ")"
    Sheet3.Range("D" & sumrange + 2).Font.Bold = True
    Sheet3.Range("D" & sumrange + 2).Font.Size = 12
    Sheet3.Range("D" & sumrange + 2).Font.Color = RGB(255, 0, 0)
    Sheet3.Range("D2", Cells(Rows.Count, "D").End(xlUp).Offset(-2, 0)).Interior.Color = RGB(255, 192, 0)
    Sheet3.Range("D2", Cells(Rows.Count, "D").End(xlUp).Offset(-2, 0)).Font.Bold=True

    Sheet3.Range("c" & sumrange + 2).Value = "TOTAL 2011-2011 YEARLY FORCAST"
    Sheet3.Range("c" & sumrange + 2).Font.Bold = True
    Sheet3.Range("c" & sumrange + 2).Font.Size = 12
    Sheet3.Range("c" & sumrange + 2).Font.Color = RGB(255, 0, 0)
    Sheet3.Range("c" & sumrange + 2).HorizontalAlignment = xlRight


    Application.ScreenUpdating = False
    Application.CutCopyMode = False


    End Sub
    }

    有人可以帮我避免错误并更新电子表格,在表格的每个 D 列中保留内部颜色和粗体字体吗?

    最佳答案

    尝试这个:
    行前

    Sheet3.Range("D2", Cells(Rows.Count, "D").End(xlUp).Offset(-2, 0)).Interior.Color = RGB(255, 192, 0)
    Sheet3.Range("D2", Cells(Rows.Count, "D").End(xlUp).Offset(-2, 0)).Font.Bold=True

    添加
    lastrow2 = Sheet3.Cells(Rows.Count, "D").End(xlUp).Row
    并将您的行更改为:
    Sheet3.Range("D2", Cells(lastrow2, "D")).Interior.Color = RGB(255, 192, 0)
    Sheet3.Range("D2", Cells(lastrow2, "D")).Font.Bold = True

    你也可以改变这个:
    For j = 2 To lastrow2

    Sheet3.Cells(j, 4).Value = Sheet3.Cells(j, 5).Value + Sheet3.Cells(j, 6).Value + Sheet3.Cells(j, 7).Value + Sheet3.Cells(j, 8) + Sheet3.Cells(j, 9).Value + Sheet3.Cells(j, 10).Value + Sheet3.Cells(j, 11).Value + Sheet3.Cells(j, 12).Value + Sheet3.Cells(j, 13).Value + Sheet3.Cells(j, 14).Value + Sheet3.Cells(j, 15).Value + Sheet3.Cells(j, 16).Value

    Next j

    对此:
    Sheet3.Range("D2:D" & lastrow2).Formula = "=SUM(E2:T2)"  

    要运行表 3-8,整个代码将如下所示(记住 j 是表的索引!必要时进行调整):
    Sub YearlyForcast2011_2012()

    Dim j As Integer
    Dim lastrow2 As Long
    Dim sumrange As Long

    For j = 3 To 8

    Sheets(j).Columns("D").HorizontalAlignment = xlRight

    lastrow2 = Sheets(j).Cells(Rows.Count, 1).End(xlUp).Row

    Sheets(j).Range("D2:D" & lastrow2).Formula = "=SUM(E2:T2)"

    sumrange = Sheets(j).Cells(Rows.Count, "D").End(xlUp).Row

    Sheets(j).Range("D" & sumrange + 2).Formula = "=SUM(D2:D" & sumrange & ")"
    Sheets(j).Range("D" & sumrange + 2).Font.Bold = True
    Sheets(j).Range("D" & sumrange + 2).Font.Size = 12
    Sheets(j).Range("D" & sumrange + 2).Font.Color = RGB(255, 0, 0)

    lastrow2 = Sheets(j).Cells(Rows.Count, "D").End(xlUp).Row

    Sheets(j).Range("D2", Cells(lastrow2, "D")).Interior.Color = RGB(255, 192, 0)
    Sheets(j).Range("D2", Cells(lastrow2, "D")).Font.Bold = True

    Sheets(j).Range("c" & sumrange + 2).Value = "TOTAL 2011-2011 YEARLY FORCAST"
    Sheets(j).Range("c" & sumrange + 2).Font.Bold = True
    Sheets(j).Range("c" & sumrange + 2).Font.Size = 12
    Sheets(j).Range("c" & sumrange + 2).Font.Color = RGB(255, 0, 0)
    Sheets(j).Range("c" & sumrange + 2).HorizontalAlignment = xlRight

    Next j

    Application.ScreenUpdating = False
    Application.CutCopyMode = False

    End Sub

    关于excel - 直到最后一个单元格的单元格的内部颜色,其中包含一列中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37450632/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com