VBA for EXCEL FAQ

类别:.NET开发 点击:0 评论:0 推荐:

VBA for EXCEL FAQ :

 

1、

 

Q:我有一段小程序,需要对现有的excel的格式做一些修改。主要就是添加一些行列,合并一些单元格,设置单元格的格式等等。

当程序运行的时候,只看见眼前的excel表一顿变化,眼花缭乱。

我想让程序能在静默方式下完成,完成后再updata windows 有什么办法?

或者其他可以让它不眼花缭乱的办法都可以

 

A:

运行前

Application.ScreenUpdating = False

运行后

Application.ScreenUpdating = True

 

2、

Q:

我得到一个excel的单元格地址:用cells引用是:cells(5,2)

那么它的R1C1地址因该对应为"B5"

有没有方便的函数帮助我在提供其中一个地址后可以转换成另一种??

 

A:

Expression.Address(RowAbsolute, ColumnAbsolute, ReferenceStyle, External, RelativeTo)

 

3、

Q:

我想屏蔽掉系统的警告,不让它弹出提示框。

A:

Application.DisplayAlerts = False

 

4、

Q:

在EXCEL中,想获得实际用到的行数,就是有内容的行数,不算空白的部分

A:

Dim usrow as integer

Dim uscol as integer

usrow = activesheet.UsedRange.Rows.Count

uscol = activesheet.UsedRange.columns.Count

usrow是行数,uscol是列数。

 

5、

Q:如何去掉单元格的公式,保留它的数据?

 

A:

Cells(n,m).Value = Cells(n,m).Value

 

6、

Q:怎么改才能设置单元格底色?

 

A:

Range对象 . Interior . ColorIndex = 13 ‘颜色index

 

7、

Q:

需要把 8:00:00 这个值装换位数字 8 请问有没有相应的函数

 

A:

Dim x As Integer

x = Hour(CDate("8:00:00"))

 

8、

Q:

如何得到当前运行的XLS文档的目录???

A:

activeWorkbook.Path            '当前文档的路径

activeWorkbook.FullName        '带路径的当前文档名

activeWorkbook.Name            '当前文档名

 

9、

Q:

如何在Excel中单击某一个单元格时,弹出自定义菜单?

A:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)

   

   

 

        If ActiveCell.row= 3 and activecells.column=3 Then

        userform1.show

        End If

   

End Sub

 

10、

Q:

下面是宏里的一段代码,功能是这样的:在sheet1表中,当鼠标选取某一行时,就将这行的第一列值赋给sheet2表的第四行第二列。

目的是以录制宏的方式实现这样的代码?请指教~·!

   

Row = ActiveCell.Row

   

Sheets("sheet2").Cells(4, 2).Value = Cells(Row, 1).Value

A:

Row = ActiveCell.Row

   

Sheets("sheet2").Cells(4, 2).Value = Sheets("sheet1").Cells(Row, 1).Value

 

Sheets("sheet2").Cells(4, 2).Value =activecell.value

都可以。

本文地址:http://com.8s8s.com/it/it43033.htm