乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>EXCEL</em>如何用<em>VBA</em>代码找出非空单

<em>EXCEL</em>如何用<em>VBA</em>代码找出非空单

作者:乔山办公网日期:

返回目录:excel表格制作


可以用下面的语句:
最后一个值 = Sheets("sheet1").Range("A65535").End(xlUp).Value

用 col=range("C1").end(xltoright).column '找到最后非空一列
语句可能存在问题:当A1至A5数据连续时,该语句能返回正确
的结果,但当不连续时,将得不到最后一个非空结果

1
2

4
5
将只得到2,而不是5(其中3是空白,如果3有数值,将得到5)

位置什么意思?下面代码为显示行列号——

Sub m()
For Each Rng In Range("A1:N6")
If Rng <> "" Then
MsgBox "非空单元格行号" & Rng.Row & " 列号为" & Rng.Column
End If
Next
End Sub

VBA判断单元格为空,zd可以使用Range(...)="",例如

IF RANGE("A1")="是" THEN
    FOR EACH t IN ARRAY("B1","C2",D4")
        IF RANGE(t)="" THEN MSGBOX "你"& t &"格内容未填"
    NEXT t
END IF


因为单元格包含边框,所有看上去单元格没有内容,但是在使用Cell时,因为含有边框,Cell(i,j)<>"",可以用Cell(i,j).value<>""来判断。Cell不仅是单元格的内容,还包含单元格的格式等等与单元格相关的方面。

关于Cell的详细知识如下:
Cell代表单个表格单元格。
Cell对象是Cells集合中的元素。
Cells集合代表指定对象中所有的单元格。

用 Cell(row, column) 或 Cells(index)可返回 Cell对象,其中 row 为行号,column 为列号,index 为索引序号e69da5e887aae799bee5baa6e79fa5e98193335。下列示例给第一行的第二个单元格加底纹。

Set myCell = ActiveDocument.Tables(1).Cell(Row:=1, Column:=2)
myCell.Shading.Texture = wdTexture20Percent

下列示例给第一行的第一个单元格加底纹。

ActiveDocument.Tables(1).Rows(1).Cells(1).Shading _
.Texture = wdTexture20Percent

用Add方法可在 Cells集合中添加 Cell对象。也可用 Selection对象的InsertCells方法插入新单元格。下列示例在myTable 的第一个单元格之前插入一个单元格。

Set myTable = ActiveDocument.Tables(1)
myTable.Range.Cells.Add BeforeCell:=myTable.Cell(1, 1)

本示例将第一个表格的头两个单元格设定为一个域 (myRange)。区域设定之后,用 Merge方法合并两个单元格。

Set myTable = ActiveDocument.Tables(1)
Set myRange = ActiveDocument.Range(myTable.Cell(1, 1) _
.Range.Start, myTable.Cell(1, 2).Range.End)
myRange.Cells.Merge

说明
使用带 Rows 或 Columns集合的 Add方法添加一行或一列单元格。
使用 Selection对象的Information属性返回当前行号和列号。下面的示例改变选中部分第一个单元格的宽度,再显示单元格的行号和列号。

If Selection.Information(wdWithInTable) = True Then
With Selection
.Cells(1).Width = 22
MsgBox "Cell " & .Information(wdStartOfRangeRowNumber) _
& "," & .Information(wdStartOfRangeColumnNumber)
End With
End If

相关阅读

关键词不能为空
极力推荐

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