Pages

2021-12-16

〔EXCEL〕計算年資﹥幾年幾月幾日-DATEDIF--h019

   

【計算年資﹥幾年幾月幾日】



=IF(DATEDIF(到職日,IF(離職日="",TODAY(),離職日+1),"Y")=0,"",DATEDIF(到職日,IF(離職日="",TODAY(),離職日+1),"Y")&"年") & IF(DATEDIF(到職日,IF(離職日="",TODAY(),離職日+1),"YM")=0,"",DATEDIF(到職日,IF(離職日="",TODAY(),離職日+1),"YM")&"月")&IF(DATEDIF(到職日,IF(離職日="",TODAY(),離職日+1),"MD")=0,"",DATEDIF(到職日,IF(離職日="",TODAY(),離職日+1),"MD")&"日")



相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

2021-12-15

〔VBA〕複製與貼上-Copy & Paste--v058

 

【複製與貼上-Copy & Paste】


Range("複製").Copy
Cells(列, 欄).Copy
    
Range("貼上").PasteSpecial xlPasteAll
Range("貼上值").PasteSpecial xlPasteValues
Range("貼上公式").PasteSpecial xlPasteFormulas
Range("貼上格式").PasteSpecial xlPasteFormats

注意:Cells()沒有Paste屬性

相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

〔VBA〕從非連續的選取區取每個Cell值(Selection.Areas)--v057

       

【從非連續的選取區取每個Cell值(Selection.Areas)】

Dim sArea  As Range
Dim sCell As Range
For Each sArea In Selection.Areas
    For Each sCell In sArea.Cells
        MsgBox sCell.Value
    Next
Next
Set sArea = Nothing: Set sCell = Nothing



相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

2021-02-26

〔VBA〕刪除指定儲存格之格式化條件--v056

        

【刪除指定儲存格之格式化條件】


'該儲存格內格式化條件全數刪除
Range("C4:W33").FormatConditions.Delete

'該儲存格內格式化條件指定刪除
Range("C4:W33").FormatConditions(2).Delete


相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

〔VBA〕格式化條件-大於0紅色/小於0綠色--v055

      

【指定儲存格>0紅色<0綠色】


本範例為設定A1公式,若A1>0則字型呈現紅色,<0則呈現綠色
    AA.Range("A1").Formula = "=U" & iRow & "*1000*(1-0.001425-0.003)-AM" & iRow 
    With AA.Range("A1")
        .FormatConditions.Add Type:=xlExpression, Formula1:="=A1>0"
        .FormatConditions(1).Font.Color = -16776961
        .FormatConditions.Add Type:=xlExpression, Formula1:="=A1<0"
        .FormatConditions(2).Font.Color = -11489280
    End With

注意:Conditions增加Index由1起算
最後一個格式化條件 Range.FormatConditions(Range.FormatConditions.Count)


相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

2021-02-24

〔VBA〕取出多欄ListBox資料--v054

     

【取出ListBox資料】

注意:第1欄的Index=0,第2欄的Index=1, 以此類推…

選取列資料取出
SelectColumn1 = Me.ListBox1.Value
SelectColumn2 = Me.ListBox1.Column(1)




相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

〔VBA〕WorksheetFunction-調用函數CountIfs--v053

    

VBA中使用CountIfs函數


Application.WorksheetFunction.CountIfs(AA.Range("G:G"), "條件1", AA.Range("AN:AN"), "")

Application.WorksheetFunction.CountIfs(AA.Range("G:G"), "條件1", AA.Range("AN:AN"), ">0")



相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

〔VBA〕寫入多欄ListBox資料--v052

   

【寫入多欄ListBox資料】

    
With ListBox1
    .AddItem "第一欄資料"
    .List(.ListCount - 1, 1) = "第二欄資料"
End With

相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

〔VBA〕將指定範圍內不重複的資料加入ListBox--v051

  

【將指定範圍內不重複的資料加入ListBox】


    '取得該列之不重複資料
    Dim collData As New Collection, cel As Range, itm
    On Error Resume Next
    For Each cel In ActiveSheet.Range(Cells(s_rowNo, colNo), Cells(e_rowNo, colNo))
        If cel <> "" Then collData.Add cel.Value, CStr(cel.Value)
    Next
    
    '排序完塞入資料
    Me.ListBox1.Clear
    On Error GoTo 0
    For Each itm In collData
         Me.ListBox1.AddItem itm
    Next



相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

2021-02-19

〔VBA〕ShowAllData-取消自動篩選條件--v050

 

【取消自動篩選,顯示所有資料】


ActiveSheet.AutoFilter.ShowAllData

這動作並不會取消自動篩選。
若要將自動篩選移除,必需使用
ActiveSheet.AutoFilterMode = False

ActiveSheet.AutoFilter Is Nothing無法判別是否有在篩選狀態,若在無篩選狀態,ShowAllData會產生Error



相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

2021-01-03

〔EXCEL〕組合範例-取得工作表名稱--h018

【取得工作表名稱】


=MID(@CELL("filename",A1),FIND("]",@CELL("filename",A1))+1,LEN(@CELL("filename",A1))-FIND("]",@CELL("filename",A1)))

直接整段複製貼到儲存格即可~
A1:指該工作表A1欄位,您也可以指定不同工作表的任意欄位。


相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※