2020.03.29 做一个整理
        

    '#活动单元格后面_插入多行,最后一格参数表示按照下面行的格式插入,默认为按照上一行格式插入
        Range(address).EntireRow.Resize(rownumbers).Insert  , CopyOrigin:=xlFormatFromRightOrBelow
        
   '#chr(10) & chr(13)表示回车,vbyesno之类返回的是vbyes或者vbno值。vbinformation为提示图标,默认为none;
   'chr(61)表示=号,chr(34)表示双引号"
        MsgBox string1 & Chr(10) & Chr(13)  & strings2, vbOKOnly + vbInformation
        
   ' #调用excel内置函数
        Application.WorksheetFunction.Max(range("a1:c18))
    
    ' #复制插入粘贴,仅复制值(建议用宏来查询参数)
    
        Sheets("sheetname").Select
        Range("b" & find1 & ":c" & find1 + find2 - 1).Select #复制的内容处于sheet1的对应单元格中;
        Selection.Copy
        Sheets("sheet2").Select #激活要插入的工作表        
        Range(ActiveCell.Address).Select #激活要复制到的单元格地址        
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 
        
    '#获得A列有效数据的最后行row和最后一列cloumn,
    '#备注1: ActiveSheet.UsedRange.Rows.Count得出的结果不一定准确,特别对于格式或者行列编辑操作以后;
    '#备注2:2003(含)以前的版本,最大行为65536(2^16),最大列为IV
   ' #备注3:2007(含)以后的版本,最大是1048576(2^20),最大列为XFD,对于数据少的工作表没什么影响,对于大量数据的建议采用后者;
        Sheets("sheet1").Range("A65536").End(xlUp).Row
        Sheets("sheet1").Range("IV1").End(xlToLeft).Column
                
    '#数据格式设定,建议用带local的本地化设置;其他设置"0.00"(小数点两位数字),"000000"(固定6位字符),"@"(文本字符)
        With Range("A1").NumberFormat = "0.00" #将数字设置为两位小数;
            .NumberFormat = "0.00%" #将数字设置为两位小数的百分数;
            .NumberFormat = "000000" #将数字设置为6位整数(邮编);
            .NumberFormat = "@" #将数字设置为文本;
            .NumberFormat = "[DBNum2]" #将数字设置为中文大写;
            .NumberFormatLocal = "(¥#,##0.00_); [红色] (¥#,##0.00)" #将数字设置为人民币;负值用红色括号标记,
            .NumberFormatLocal = "¥#,##0.00;[红色]¥-#,##0.00".NumberFormat = "yyyy年m月d日" #设置为日期;负值仅用红色标记
            .NumberFormat = "yyyy年m月d日aaaa" #设置为日期星期几;
            .NumberFormat = "yyyy-m-d dddd" #设置为日期星期几;(英文)
            .NumberFormat = "mmmm" # 设置英文全称;
            .NumberFormat = "mmm" #设置英文简称;
            .NumberFormat = "aaaa" #设置汉语星期;
            .NumberFormat = "dddd" #设置英语星期;
            .NumberFormat = ";;" #隐藏单元格数字;
            .NumberFormat = ";;;" #将隐藏单元格数字和文本
            .NumberFormat = "0;-0;;@" #隐藏单元格零值
        End With
        
    '#Asc字符,对应转换是Chr(数字)
        asc(字符)    #英文及符号的范围为33~127,汉字为负数,60~62为小于等于和大于,34为",38为&,10为回车
        
    '#数组相关
        Ubound(数组名) #获取数组的上限值,下限值默认为0,所以总数应该为ubound+1;
        arr=Range("A1:C18")    #把单元格数据赋值给二维数组;
        arr1=Application.WorksheetFunction.Transpose(arr2)    #将数组arr2转置后赋值给另一数组arr1,或者赋值给range("A1:C18")这样的单元格组;
        #转置类似于单元格的行列转换,简单说一维数组直接赋值给range,只能赋值为一行多列,通过转置则赋值为一列多行,这样的意思。
        arr1=array(str1,str2,str3...)    #直接赋值给数组
        arr1=split(str1,"|")    # 采用分隔符对字符串分解,直接赋值给数组,split()(i)只表示数组内部的某一个数据
        arr1(x,y)=str1        #直接对数组某一位置赋值
        Erase arr1        #清除数组内容
        
    '#可视范围跳转到指定区域:C18会跳到首行可视(不含冻结单元格)
        Application.Goto reference:=Range("C18"), Scroll:=True 
        
    '#区域排序
        Range("A1:C18").Sort key1:=Range("B1"), Order1:=xlAscending #A-Z排序  #按照B列升序排列,降序为Descending
        
    '#工作表相关#
        sheets("sheet1")        #表名称为 sheet1 的表
        sheets("sheet1").name    #sheet1    取得表名
        sheets("sheet1").codename    sheeet21    #取得工作表的内部名称
        worksheets.count        #该工作簿文件中的工作表的总数,整数型
        sheets("sheet1").visible=true        #隐藏sheet1,
        Worksheets("sheet1").Delete        #删除工作表
        Sheets("sheet1").Select        #选择工作表
        Sheets("sheet1").Copy after:=Sheets(Sheets.Count)        #复制当前工作表,放在最后的位置,也可以采用sheet("某表"),放在某表后面
        sheets("sheet1").unprotect        #取消保护工作表,如果有密码会提示输入密码,另一个参数是protect
        Range("A1:C18").locked=false        #解锁或者锁定单元格,true或者flase
        sheets("sheet1").EnableSelection=xlUnlockedCells        #仅允许选择为锁定单元格,xlNoSelection全部不允许选取, xlNoRestrictions全部允许
        
    '#单元格相关
        .ClearContents    #clear为清除所有属性(含格式);
        .clearformats    #为清除格式,不清除内容和公式;
        .clearcomments    #为清除标注;
        .clearcontents    #为清除数据、公式,不清除格式;
        .Delete shift:=xlUp        ‘删除单元格,下方的上移,
        .EntireRow.Delete #所选单元格所在行整行删除
        .EntireColum.Delete #所选单元格所在列整列删除
        .Borders.LineStyle = 1        #加外框,0为无外框xlNone,1为单实线xlContinuous,双线xlDouble,点划线xlDot,虚线xldash
        .Borders.Weight = 2        #框线为实线,1-xlhaire,2-xlthine,3-xlmedium,4-xlthick,线粗细
        .BorderAround , 3         #外框为3号粗线,分格符是逗号,粗细设置同weight
        .formula        #输出单元格的公式,不是value,如果没公式,则直接输出value
        .MergeCells         #合并单元格,对象为Range,不是cells       
        cells(1,"a").MergeCells     #判断是否为合并单元格,返回值为布尔值,Cells对象
        activecell.Address(0,0)        #活动单元格地址,默认为(1,1),(0,0)表示相对地址,如A1,(1,1)表示绝对地址,如$A$1,对应行列。
        ActiveCell.Offset(0, -1)     #指定单元格偏移offset,按照行列,正下负上的原则
        Cells(row,column).Activate    #将指定单元格为活动单元格
        activecell.row        #活动单元的行号,数字型,如2
        activcecell.column        #活动单元的列号,数字型,如4
        .Interior.Colorindex = xlNone #背景色,索引色
        .Font.Colorindex = xlAutomatic #字体颜色,索引色
        .Font.Size=9    ’字体大小.Font.Bold=True #字体加粗
        .HorizontalAlignment = xlCenter #对齐方式,xlLeft,xlRight
        
        
    '#错误跳转
        on error goto handle01
        #正常执行的代码
        exit sub #跳转处代码
        
        handle01:#发生错误时执行的代码
        end sub
        
    '#模拟打印后的事件处理
        Public isRealPrint As Boolean# 模拟printafter打印事件
            Private Sub Workbook_BeforePrint(Cancel As Boolean)   
                If Not isRealPrint Then        
                
                    # 打印前需要处理代码段,例如打印前将某些表格自动隐藏     
                             
                    isRealPrint = True        
                    ThisWorkbook.PrintOut # 真实的打印 会再一次进入BeforePrint事件。但由于isRealPrint全局变量已经设置为了True, 所以只是打印而已
                               
                     # 打印后的处理代码段,打印后将某些表格恢复显示       
                      
                     Cancel = True # 取本次打印       
                      isRealPrint = False   
                  End If
         End Sub
         
   ' #文件操作相关
        Open "pathname/filename" For Output As #1        output为写入模式,Append为追加,Input为读取
        print #1 string1        把string1文本写入文件一行
        close #1        关闭文件
        
    '#网络操作相关
        ActiveWorkbook.FollowHyperlink URL页面 #浏览器打开URL1页面;
    
   ' #读取网页源代码
        With CreateObject("MSXML2.XMLHTTP")    
            .Open "GET", URL1, False    
            .Send    
            string1 = StrConv(.Responsebody, vbUnicode) #获得网页源代码内容    
            code1 = .Status    
                    If code1 = 404  Then 出现404错误或者数字不够    
                            #网页404错误处理代码    
                    End If
        End With
        
    '#定时操作处理,这段代码应写在function-name自身内部,这样可以自动调用,同时还需要在checkbox1的change事件中执行call function-name’
    '#执行的规则是:checkbox的change触发call function-name,然后再funcitiona-name内部循环执行,如果检测到checkbox手动取消,则停止执行;
        If CheckBox1.Value = True Then
                Application.OnTime Now + TimeValue("00:00:05"), "function-name" #每5秒后自动执行funcition-name的代码
        Else
                Application.OnTime Now + TimeValue("00:00:05"), "zhxx", , False #停止
                Exit Sub
        Endif