2020年7月20日 星期一

[SFTP 架站 ]SERVER FREE SFTP SITE 免費快速架站免安裝 適用多站台

我目前架SFTP SERVER使用的是Rebex Tiny SFTP Server
網址在這兒
是免費的
簡單設定
檔案輕巧
支援多個站台架站
非常推薦!!




官網下載後只要手動修改config檔案
調整為自己需要的參數如下圖
port 可以使用預設22、23
如果要多個站台的時候只要複製這個路徑,再將新的config檔案重新調整到相對應的路徑
另外指定其他不衝突的port就可以了



2020年7月14日 星期二

[Google Sheet] 試算表 表單快速找出重複填單的人


當我們很常利用Google 表單來讓大家做團購或是填單當作統計使用
但Google表單製作尚無法檢查是不是重複登記了
所以我們在蒐集結果的時候,可以有一個比較快速的方法,來立即找出重複的紀錄

首先,表單設計的時候,建議還是要有一組不會跟別人相同的編號、身分證、Email...等,當作這張表單的唯一識別。






當表單結束填寫後,來到回覆表單,可以取得回應結果並顯示在Google 試算表中
























<重頭戲來了>  我們要在B欄位中找出有重複的值,並且用顏色標示出來



在條件式格式規則裡自訂公式:
套用範圍 B:B 
自訂公式 =countif($B:$B,$B1)>1
底色 紫色
這樣就完成啦!




重點複習:
有了下面公式就可以快速看出任一欄位重複的值囉!
countif($B:$B,$B1)>1

2020年6月18日 星期四

[VB.NET][Windows Form] 錯誤訊息System.Exception: Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding.


錯誤訊息

************** Exception Text **************
System.Exception: Execution Timeout Expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.




原本使用的SQL連線方式如下
 Dim Ds As New DataSet
Conn = New SqlConnection(connStr)
Dim records As New List(Of GUIDO)
Dim SqlTxt As String = ""
SqlTxt += " SELECT * "
SqlTxt += " FROM TESTTABLE "
Dim Cmmd As New SqlCommand(SqlTxt, Conn)
Conn.Open()
Dim Da As New SqlDataAdapter(Cmmd)
Da.Fill(Ds)

後來發現Timeout 的原因為預設30秒,剛好這一段SQL 真的屬於比較複雜,所以我就針對這一段SQL加長timeout的預設值到120
就快速解決問題了

 Dim Ds As New DataSet
Conn = New SqlConnection(connStr)
Dim records As New List(Of GUIDO)
Dim SqlTxt As String = ""
SqlTxt += " SELECT * "
SqlTxt += " FROM TESTTABLE "
Dim Cmmd As New SqlCommand(SqlTxt, Conn)
Conn.Open()
Dim Da As New SqlDataAdapter(Cmmd)
Da.SelectCommand.CommandTimeout = 120
 Da.Fill(Ds)

-後續追蹤-
發現DB 因為最近都沒有執行rebulid index ,所以開始造成查詢緩慢的現象
緊急先將幾個重要的table 執行rebulid後
隔天狀況有改善了,不過最好還是在每天備份的時候順便排程執行rebulid index 會比較好
後續再來分享立即rebulid 的方式 跟 排程rebulid

2020年4月9日 星期四

[EXCEL] [公式] 找出指定的文字


目的:
當EXCEL 某一個欄位中有重複的文字,想要歸類出在指定的一個新的欄位中


例如:
A欄 都會一直重複SERIAL NUMBER:,我們想要找到這段文字後面接續的內容都放置在B欄中


A欄內容
1         TEST1 TEXT SERIAL NUMBER:0123456
2         TEST2 TEXT SERIAL NUMBER:6543210
3         TEST3 TEXT SERIAL NUMBER:7894123   



B欄公式第一步
=FIND("SERIAL NUMBER:",$A1,13)
先找出A1中 所出現的這13各字要在B1中顯現出來

B欄公式第二步
=MID($A1,FIND("SERIAL NUMBER:",$A1,13),25)
再從找到第一步的文字算起,往後再從加上25個字元,這25的數字可以依照你的需求而改


B欄公式第三步

=IFERROR(MID($A1,FIND("SERIAL NUMBER:",$A1,13),25),"")
因為沒有找到的欄位會顯示出#VALUE FAILURE 之類的字樣
為了美觀再加上IFERROR,將沒有找到的文字設定為空白欄位

[OUTLOOK疑難雜症]中文字重疊

症狀:
只有中文字會重疊在一起,會比好朋友還要好一般的擠在一起

治療:
把中文字型重新放到 C:\Windows\Fonts\ ,再重新啟動Outlook 就好了


常見的中文字型檔名如下:
標楷體  kaiu.ttf
細明體&新細明體 mingliu.ttc
新細明體擴充文字更新套件 mingliub.ttc
微軟正黑體 MSJH.TTC
微軟正黑體 msjh.ttf
微軟正黑體粗體 MSJHBD.TTC
微軟正黑體粗體 msjhbd.ttf

2020年4月8日 星期三

[批次指令] 本地資料夾自動與遠端資料夾檔案數同步 [[適用:Server2016、Windows10]

目的:

希望每天利用排程,將本機中的資料夾能自動同步比對與遠端資料夾完全相同,並將每天完成動作記錄下來,且記錄檔名稱皆為當天執行日期


範例:

本地資料夾 D:\publish\

遠端資料夾 \\192.168.0.1\publish\

記錄檔資料夾 D:\Log\


語法:

robocopy \\192.168.0.1\publish\ D:\publish\ /E /log+:D:\Log\Sync_publish_%date:~0,4%%date:~5,2%%date:~8,2%.log



[批次指令] 刪除指定天數前的檔案[[適用:Server2016、Windows10]

目的:清除3天份的備份檔


語法:forfiles /p "D:\DRBackup\DIFF-1" /s /m *.bak /d -3 /c "cmd /c del @file"



參考:
https://docs.microsoft.com/zh-tw/windows-server/administration/windows-commands/forfiles