2019-11-26

〔VBA〕ADO-元件引用項目--v040

【使用資料庫連線需加入的引用】



Microsoft ActiveX Data Objects 6.1 Library
Microsoft ActiveX Data Recordset 6.0 Library

若不引用上述項目,在宣告元件時,請使用CreateObject的方式




相關課程:


章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※
5 章老師的電腦小講堂: 11月 2019 【使用資料庫連線需加入的引用】 Microsoft ActiveX Data Objects 6.1 Library Microsoft ActiveX Data Recordset 6.0 Library 若不引用上述項目,在宣告元件時,請使用CreateO...

〔VBA〕ADODB.Connection-建立資料庫連線--v039

【建立一個資料庫MSSQL連線】


Public Function SCE_GetConn() As ADODB.Connection
    Dim Conn As ADODB.Connection
    Dim sConnect As String
    Dim strSqlInstance As String
    Dim strSqlDB As String
    Dim strSqlUser As String
    Dim strSqlPWD As String
    ' strSqlInstance = "SERVER_NAME\INSTANCE"
    ' 如果伺服器只有裝一次 SQL,就只要輸入伺服器名稱
    strSqlInstance = "."
    strSqlDB = "DBName"
    strSqlUser = "sa"
    strSqlPWD = "sqlpassword"
    sConnect = "Provider=SQLOLEDB"
    sConnect = sConnect & ";DATA SOURCE=" & strSqlInstance & ";Initial Catalog=" & strSqlDB
   ' 如果把 User ID=...;Password=... 改成 "Integrated Security=sspi;",認證方式就變成 AD 登入帳號
    sConnect = sConnect & ";User ID=" & strSqlUser & ";Password=" & strSqlPWD & ";"
    Set Conn = New ADODB.Connection
    Conn.ConnectionString = sConnect
 
    Set SCE_GetConn = Conn
End Function



相關課程:


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

5 章老師的電腦小講堂: 11月 2019 【建立一個資料庫MSSQL連線】 Public Function SCE_GetConn() As ADODB.Connection     Dim Conn As ADODB.Connection     Dim sConnect As String     Dim...

2019-11-25

〔EXCEL〕Countif-用顏色自動標示重覆的資料--h013

【運用格式化設定自動標示重覆的資料】


其實這課程先前都已上過,所以今天只是再舉個實際範例來實現這樣的作法~

找出資料是否重覆的方法有很多
一般很常見的使用比對的方式,例如:Vlookup、Match...
只要能達到目的的都是好方法…

不過方法很多也不用每種都記住啦~
練得一招走天下,用得精也是威力無窮...

有鑑於我的腦容量不是很夠用,通常找到更簡單易記的方式,我就會把它變成一種標準用法,遇到就套用…成為不用腦的自然反應…

所以現在要標示出重覆的資料…我都直接用
Countif + 格式化設定的條件
來讓重覆的資料自動變色…達到一目了然的目的…


這個資料的需求,是想要知道「紅框處」有哪些代碼在「藍框處」有出現
(哪幾家是連三買股價卻不漲的資料)

因此可以直接在V6欄增加一個「格式化設定的條件」如下

=COUNTIF($G:$G,$V6)=1
G欄值不會重覆,因此只要設定=1即可。
若G欄會有重覆值,請設定為>=1。

設定完後,再修改其『套用範圍』即完成囉!

相關課程可以參閱以下的連結囉!

相關課程:
〔EXCEL〕如何Highlight重覆資料--h005


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

5 章老師的電腦小講堂: 11月 2019 【運用格式化設定自動標示重覆的資料】 其實這課程先前都已上過,所以今天只是再舉個實際範例來實現這樣的作法~ 找出資料是否重覆的方法有很多 一般很常見的使用比對的方式,例如:Vlookup、Match... 只要能達到目的的都是好方法… 不過方法很多也不用每種都記...

2019-11-21

〔VBA〕ProtectContents-取得工作表保護狀態--v038

【如何取得工作表保護(鎖定)狀態】


Private Sub cmdLock_Click()
    '鎖定或解鎖
    If ActiveSheet.ProtectContents = True Then
        ActiveSheet.Unprotect    '解鎖
        Me.cmdLock.Caption = "鎖定"
    Else
        ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
            , AllowFormattingCells:=True, AllowFormattingColumns:=True, _
            AllowFormattingRows:=True        '鎖定
        Me.cmdLock.Caption = "解鎖"
    End If
End Sub

相關課程:


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

5 章老師的電腦小講堂: 11月 2019 【如何取得工作表保護(鎖定)狀態】 Private Sub cmdLock_Click()     '鎖定或解鎖     If ActiveSheet.ProtectContents = True Then         ActiveSheet.Unpro...

2019-11-19

〔VBA〕StartUpPosition-指定表單開啟時的位置--v037

【指定表單開啟時的位置】


Private Sub UserForm_Initialize()
    '右下角
    Me.StartUpPosition = 0
    Me.Top = Application.Top + Application.Height - Me.Height - 20
    Me.Left = Application.Left + Application.Width - Me.Width - 20
End Sub


設定描述
手動0指定沒有初始設定。
CenterOwner1UserForm所屬的項目上的管理中心。
CenterScreen2管理中心在整個螢幕。
WindowsDefault3螢幕的左上角位置。




相關課程:


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

5 章老師的電腦小講堂: 11月 2019 【指定表單開啟時的位置】 Private Sub UserForm_Initialize()      '右下角     Me.StartUpPosition = 0     Me.Top = Application.Top + Application.Hei...

2019-11-18

〔VBA〕FileDialog-開啟視窗選取資料夾--v036

【開啟視窗選取資料夾顯示路徑】

    With Application.FileDialog(msoFileDialogFolderPicker) '開啟選取檔案視窗
      .InitialFileName = ActiveWorkbook.Path & "\" '預設為目前檔案所在位置
      .AllowMultiSelect = False '只能選取單一資料夾
      If .Show <> 0 Then '如果有選到資料夾
           MsgBox .SelectedItems(1) '顯示資料夾路徑
      End If
    End With

相關課程:


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

5 章老師的電腦小講堂: 11月 2019 【開啟視窗選取資料夾顯示路徑】     With Application.FileDialog(msoFileDialogFolderPicker) '開啟選取檔案視窗       .InitialFileName = ActiveWorkbook.Path &am...

〔EXCEL〕SWITCH-依比對值回傳對應值--h012

【依比對值回傳對應值】


老實說,上面的敘述連我都很難理解…
直接用以下的範例來說明好了…


如果你有份資料,是這麼多的數字…不是常用的人是不是一眼很雖以計算這到底是多少$$
所以我想用C2的單位切換,讓資本額跟著同步變動

例如,設定有上述幾個單位可做切換(元/千元/萬元/百萬/億元)
〔下拉式選單(資料驗証)之後再開課囉,今天的重點是SWITCH〕

=SWITCH(比對的值, 對應值1, 對應回傳值1, 對應值2, 對應回傳值2, ...)
依此類推可以比對多個對應值…

以上述例子,我希望依據「單位C2」的值回傳一個除數,以便將資本額去除該數得到我要的結果…
元→資本額/1
千元→資本額/1000
萬元→資本額/10000
百萬→資本額/1000000
億元→資本額/100000000

利用SWITCH回傳比對到的值
=SWITCH(C2,"元",1,"千元",1000,"萬元",10000,"百萬",1000000,"億元",100000000)

如此一來,就可在資本額欄位下以下的公式
=56656192040/SWITCH($C$2,"元",1,"千元",1000,"萬元",10000,"百萬",1000000,"億元",100000000)

同理,請把市值當作業吧!










相關課程:


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

5 章老師的電腦小講堂: 11月 2019 【依比對值回傳對應值】 老實說,上面的敘述連我都很難理解… 直接用以下的範例來說明好了… 如果你有份資料,是這麼多的數字…不是常用的人是不是一眼很雖以計算這到底是多少$$ 所以我想用C2的單位切換,讓資本額跟著同步變動 例如,設定有上述幾個單位可做...
小講堂經過多次搬移,舊文章連結及內容較難整理~
大家可以新文章為主~
每篇文章後有代碼,任何文章問題可至FB小講堂用代碼提問唷~