發表文章

目前顯示的是有「Excel VBA活用範例大辭典」標籤的文章

Excel Resize,可設定儲存格範圍大小

P185,P186 範例中有二個方法,結果都是一樣的 用Resize的方法,更簡單快速 Resize的表示方式為,.cells(x1,y1),為開始的儲存格,加大成為 .range(.cells(x1,y1),.cells(x2,y2)) x1=6 y1=1 x2=1 y2=5 範列1 ShtTmp.cells(x1,y1).resize(x2,y2)=arr_Data 範列2 y2=ubound(arr_Data,1) with ShtTmp      .range(.cells(x1,y1),.cells(x2,y1+y2))=arr_Data end with 整列範例 ShtTmp.Columns("H:H").Resize(1, 10).ColumnWidth = 2.33

Excel countif,不能直接使用陣列參數

P.186 由於,countif 函數不能直接使用陣列參數,所以一般於工作表範圍的統計。 但是對於二維陣列中比較複雜的統計,恰當地使用輔助範圍和countif函數可以使程式碼更為簡潔 若要使用countIf,只能將陣列放進輔助格 可以搭配resize使用

Excel VBA函數參考

http://blog.xuite.net/x_3kkk/java/13408982 (275)在當前單格中顯示月份的名稱,本句為顯示"一月"       ActiveCell.Value = MonthName(1)

Excel ColorIndex 清除工作表儲存格底色

技巧 070     cells.interior.colorindex = xlNone

Excel .DisplayAlerts 刪除工作表時不顯示警告資訊

技巧028   Sub CheckDeleteSheet()      Dim bDeleted As     Boolean      bDeleted = Worksheets(1).Delete      If bDeleted Then          MsgBox "成功删除工作表。", vbInformation      Else          MsgBox "使用者取消删除。", vbInformation      End If   End Sub 執行下面程式碼需保證存在Sheet1工作表物件   Sub DeleteSheetWithoutAlert()      Application.DisplayAlerts = False      Sheet1.Delete      Application.DisplayAlerts = True   End Sub

Excel Transpose 改變動態二維陣列的「列」邊界

技巧124      p.188 Sub AddArrayBorder()     Dim i As Integer     Dim j As Integer     Dim arr     ReDim arr(1 To 2, 1 To 3)     For i = 1 To 2         For j = 1 To 3             arr(i, j) = i * j         Next j     Next i     arr = Application.WorksheetFunction.Transpose(arr)     ReDim Preserve arr(1 To 3, 1 To 5)     arr = Application.WorksheetFunction.Transpose(arr)     For i = 3 To 5         For j = 1 To 3             arr(i, j) = i * j         Next j     Next i     Sheet1.Range("A1").Resize(5, 3) = arr End Sub

Excel 自訂表單,開、關

開     UserForm1.show  關     unload UserForm1 技巧182  頁P318

Excel VBA 超過3個關鍵字的資料排序

技巧105  頁p154 語法         sort(key1,order1,key2,Type,order2,key3,order3,Header,OrderCustom,MatchCae,Ori_entation,SortMethod,kDataOption1,DataOption2,DataOption3) 結果 range("a1") →range("b1") →range("c1") →range("d1")  方法 D →C →B →A sub sortBykeys()         range("a1").sort range("d1")         range("a1").sort range("c1")         range("a1").sort range("b1")         range("a1").sort range("a1") end sub sub sortBykeys()         range("a1").sort  key1 :=range('b1") ,key2 :=range('c1") ,key3 :=range('d1"),         range("a1").sort  key1 := range("a1") end sub