于之落 2024-07-01 21:37 采纳率: 0%
浏览 17
已结题

Excel使用宏来实现A列第i行表格没有数据,则删除对应B列第i行一直到10000行表格内的所有内容(包括任何公式,如IF公式)

Excel如何使用宏来实现A列第i行表格没有数据,则删除对应B列第i行一直到10000行表格内的所有内容(包括任何公式,如IF公式)

我想实现效果如下图所示:

img

img

以下代码并没有删除表格内的公式


Sub DeleteBColumnAndBelowIfAColumnIsEmpty()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("上位机数据") ' 确保工作表名正确
      
    Dim lastRow As Long
    ' 找到A列的最后一个非空行
    lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
      
    Dim i As Long
    ' 遍历A列的每一行
    For i = 1 To lastRow
        ' 检查A列的当前行是否为空
        If IsEmpty(ws.Cells(i, 1).Value) Or ws.Cells(i, 1).Value = "" Then
            ' 如果A列的单元格为空,则清除从B列第i行开始到工作表末尾的所有内容(包括值和公式)
            ' 但为了保留格式,我们使用ClearContents而不是Clear
            ws.Range(ws.Cells(i, 2), ws.Cells(ws.Rows.Count, ws.Columns.Count)).Clear
            ' 注意:上面的代码会删除从B列第i行开始到整个工作表末尾的所有单元格的内容
            ' 如果你只想删除到某个特定的列(而不是整个工作表的列),你需要指定那个列的列号
              
            ' 由于已经完成了所需的操作,我们可以选择退出循环(如果你想继续检查后面的行,则保留循环)
            ' Exit For ' 如果不需要继续检查,可以取消注释这行代码
        End If
    Next i
End Sub
  • 写回答

16条回答 默认 最新

  • 心梓知识 2024-07-04 23:00
    关注
    获得0.15元问题酬金

    结合GPT给出回答如下请题主参考
    在 Excel 中,可以使用图表来可视化数据。对于时间序列数据,通常会使用折线图或柱状图来表示。Excel 提供了丰富的图表功能,可以灵活地设置图表的 x 轴。下面将详细介绍如何在 Excel 中创建图表,并将 x 轴从时间突然显示为个数内容。

    首先,我们需要准备一些数据来创建图表。假设我们有一个包含日期和对应数量的数据表格,可以将数据按照如下的格式填入 Excel 的单元格中:

    日期       数量
    2019/1/1   100
    2019/1/2   200
    2019/1/3   150
    ......
    

    接下来,我们可以按照以下步骤创建图表:

    步骤 1:选中数据表格中的日期和数量两列数据。

    步骤 2:在 Excel 的菜单栏中选择“插入”,然后选择你想要创建的图表类型,比如折线图或柱状图。

    步骤 3:选择正确的图表类型后,Excel 将会自动生成一个基本的图表,同时打开“图表工具”选项卡。

    步骤 4:在“图表工具”选项卡中,可以对图表进行各种设置。我们需要对 x 轴进行设置。

    步骤 5:点击“选择数据”按钮,选择“横轴标签”选项卡。

    步骤 6:点击“横轴标签范围”旁边的“选择”按钮。

    步骤 7:在弹出的对话框中,选择包含日期的列。

    步骤 8:点击“确定”,然后再次点击“确定”。

    通过以上步骤,我们可以将 x 轴从时间突然显示为个数内容。Excel 会根据日期的不同自动调整 x 轴的刻度。

    以下是使用 VBA 代码自动创建图表的示例:

    Sub CreateChart()
        Dim dataRange As Range
        Dim chart As ChartObject
        
        ' 选择数据范围
        Set dataRange = Range("A1:B10") ' 修改为你的数据范围
        
        ' 创建图表
        Set chart = ActiveSheet.ChartObjects.Add(Left:=100, Width:=400, Top:=100, Height:=300)
        
        With chart.Chart
            ' 设置图表类型
            .ChartType = xlLine ' 修改为你需要的图表类型
            
            ' 设置数据源
            .SetSourceData Source:=dataRange
            
            ' 设置 x 轴
            .Axes(xlCategory).CategoryType = xlTimeScale
            
            ' 自动调整 x 轴刻度
            .Axes(xlCategory).AutoScale = True
        End With
    End Sub
    

    以上是使用 VBA 代码自动创建图表的简单示例。你可以根据实际需求进行修改和扩展。

    总结起来,通过上述步骤和代码示例,我们可以在 Excel 中创建包含时间序列数据的图表,并将 x 轴从时间突然显示为个数内容。这样可以更直观地展示数据,并帮助我们更好地理解和分析数据。

    评论

报告相同问题?

问题事件

  • 系统已结题 7月12日
  • 修改了问题 7月6日
  • 修改了问题 7月5日
  • 修改了问题 7月5日
  • 展开全部

悬赏问题

  • ¥15 计算机博弈的六子棋代码
  • ¥15 在Fetch API中传送的参数为何不起作用?
  • ¥15 问题遇到的现象和发生背景 360导航页面千次ip是20元,但是我们是刷量的 超过100ip就不算量了,假量超过100就不算了 这是什么逻辑呢 有没有人能懂的 1000元红包感谢费
  • ¥30 计算机硬件实验报告寻代
  • ¥15 51单片机写代码,要求是图片上的要求,请大家积极参与,设计一个时钟,时间从12:00开始计时,液晶屏第一行显示time,第二行显示时间
  • ¥15 用C语言判断命题逻辑关系
  • ¥15 原子操作+O3编译,程序挂住
  • ¥15 使用STM32F103C6微控制器设计两个从0到F计数的一位数计数器(数字),同时,有一个控制按钮,可以选择哪个计数器工作:需要两个七段显示器和一个按钮。
  • ¥15 在yolo1到yolo11网络模型中,具体有哪些模型可以用作图像分类?
  • ¥15 AD9910输出波形向上偏移,波谷不为0V