乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>Excel</em>中如何用<em>VBA</em>判断行数?-

<em>Excel</em>中如何用<em>VBA</em>判断行数?-

作者:乔山办公网日期:

返回目录:excel表格制作


A列最底端有数zhidao据的单元格
[a65536].end(xlup).row

如果是统计每列有多少非空单元格
就要调用COUNTA函数方便些
WorksheetFunction.CountA (Range("A:A"))

1、同时按下“win+R”键,在打开的运行对话框中输入“excel”回车,打开一个新建的excel文档。

2、在打开的excle窗口,依次点击工具栏“开发工具”——“Visual Basic”或直接按快捷键“ALT+F11”,打开VB编辑器。

3、双击左侧工程窗口中的“sheet1”,打开“sheet1”代码编辑窗口。

4、在代码窗口的下拉框中,分别选择“Worksheet”、"SelectionChange",下面会自动生成相应的过程块代码。

5、在过程中写入代码:

If (Target.Columns.Count = Sheet1.Columns.Count) And (Target.Row <= Range("b4").Row) And (Target.Row + Target.Rows.Count > Range("b4").Row) Then

MsgBox "yes"   

Else    

MsgBox "no"    

End If

6、再回到excel窗口,测试一下代码是否能够正确运行,可以看到结果很成功。


代码如下:

Sub main()

For i = 1 To Range("A1").End(xlDown).Row'取A列最大行数,并从1到最大行数循环

If Range("A" & i).MergeCells = True Then'如果单元格为合并单元格

For j = 1 To Range("A" & i).MergeArea.Count'从1到合并单元格的数量循环

Cells(i + j - 1, 3) = Cells(i, 1) & Cells(i + j - 1, 2)'第三列等于第一列第一行合并上第二列对应各行

Next j

Else'如果不是合并单元格

Cells(i, 3) = Cells(i, 1) & Cells(i, 2)'第三列等于第一列合并第二列

End If

Next i

End Sub



详细操作步骤如下:

  1. 数据源

  2. Alt+F11,双击Sheet1,在空白VBA设计区域,复制上述代码,并点击运行,或者按F5

  3. 运行结果如下:




你是意思是不是判断工作中已经 使用的最大 行数

工一个每一行都有数的列,加入是A列

excel2007及以上

n=thisworkbook.worksheets("sheet1").range("A1048576").end(xlup).row

excel2003

n=thisworkbook.worksheets("sheet1").range("A65536").end(xlup).row

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网