正文

一些VBA的笔记2009-02-26 10:31:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/otot/41057.html

分享到:

非常流行的排序函数:
sub BubbleSort(List() As String)
Dim First As Integer,Last As Integer
Dim i As Integer, j As Integer
Dim Temp
First=LBound(List)
Last=UBound(List)
For i=First To Last-1
  For j=i+1 to Last
    If UCase(List(i)>UCase(List(j)) Then
      Temp=List(j)
      List(j)=List(i)
      List(i)=Temp
    End If
  Next j
Next i
End Sub

搜索字符串的函数是:InStr(Text, subStr)

访问Range里面的各个cell:
Rgn As Range
Dim mycell As Range
For Each mycell In Rgn
。。。。。。。
Next mycell

返回链接的地址:GetAddress(Hyperlink)

Function GetAddress(HyperlinkCell As Range)
GetAddress=Replace(HyperlinkCell .Hyperlinks(1).Address,"mailto:","")
End Function

静态随机函数:StaticRAND()  仅当用户强制刷新单元格才重新计算

循环体:
For i=1 to FinalRow Step 10 ...Exit For ...Next i
Do [While/Until]...Loop[While/Until]

对象变量及其历遍:
Dim WSD As Worksheet
Dim Mycell As Range
Dim PT As PivotTable
Set WSD=ThisWorkbook.WorkSheets("Data")
Set Mycell=WSD.Cells(Rows.Count,1).End(xlUp).Offset(1,0)
Set PT=WSD.PivotTable(1)
...
For Each wb in Workbooks
  If wb.WorkSheets(1).Name="Total" then
    WBFound=True
    WBName=wb.Name
    Exit for
  End If
Next wb

打开文本:
Open "C:\1.txt" For Input As #1
Do While Nor EOF(1)
  Line Input #FileNumber,Data
  Cells(r,1).Value=Data
Loop
Close #1

Case分支:
Select Case Cells(i,1).Value
  Case "Fist"
...
  Case 1 to 20
...
  Case "ok","well","good"
...
  Case Is>100
...
  Case Else
...
End Select

使用R1C1引用样式:“Excel选项”“公式”“R1C1引用样式” 
相对引用:=R[-1]C[-1]      =RC[-1]    
绝对引用:=R2C2   
混合引用:=R2C:R[-1]C

阅读(2424) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册