範例_字串切割與Do_While迴圈不定數量結果
這個範例是學員工作上的問題,
每天都需要將儲存格中的超連結取出到B欄中,
若儲存格中只有一個超連結還好解決,
可以用Find函數找中括弧位置,再用Mid函數切割,
剛好這個範例裡面不只一個超連結,
可能有兩個、三個甚至更多,
也就是數量不定,如果要用For迴圈,也要知道數量範圍,
所以只能用 Do While 迴圈了,
從第一個字找起,之後再從找到的位置加一再找了,該如何做。
一、函數
如果用VBA撰寫的程式
一、階段一,先撰寫只取一個超連結
外面的For迴圈是跑每一列,用 Instr函數找"【<"和">】",
分別放在將找到位置的值放在 a和b 中,
如果a或b為0,表示找不到。
如果多個超連結,可以先多產生 a1和b1變數,預設值為 1,
即從頭找起,找到之後再把 a1和b1 加1之後繼續找,
直到找不到為止,Do While 後面就是邏輯,為 True 就繼續找,
反之就離開迴圈了。
教學影音與練習檔(完整版在論壇):
https://terry55wu.blogspot.com/2019/09/dowhile.html
教學影音完整版在論壇與練習檔:
https://groups.google.com/forum/#!forum/scu_excel_vba2_107
吳老師 2019/9/20
同時也有36部Youtube影片,追蹤數超過4萬的網紅吳老師教學部落格,也在其Youtube影片中提到,EXCEL用VBA的DO_WHILE迴圈切割儲存格中的所有超連結 上課內容: 01_切割儲存中的所有超連結字串 02_用MID與FIND函數切割與改用VBA 03_用VBA切割第一個連結並思考所有連結 04_用VBA的DO_WHILE迴圈切割所有連結 完整影音 http://goo.gl/aQT...
「vba do while」的推薦目錄:
- 關於vba do while 在 吳老師excel函數與vba大數據教學 Facebook 的精選貼文
- 關於vba do while 在 吳老師excel函數與vba大數據教學 Facebook 的最佳貼文
- 關於vba do while 在 吳老師excel函數與vba大數據教學 Facebook 的最佳解答
- 關於vba do while 在 吳老師教學部落格 Youtube 的最佳解答
- 關於vba do while 在 吳老師教學部落格 Youtube 的最佳貼文
- 關於vba do while 在 吳老師教學部落格 Youtube 的精選貼文
- 關於vba do while 在 [VBA ] Do while 迴圈跳不出來- 看板Visual_Basic - 批踢踢實業坊 的評價
- 關於vba do while 在 04 用VBA的DO WHILE迴圈切割所有連結 的評價
- 關於vba do while 在 VBA, for loop with a nested do while loop - Stack Overflow 的評價
vba do while 在 吳老師excel函數與vba大數據教學 Facebook 的最佳貼文
如何用EXCEL VBA批次轉PDF檔
預覽:
這是在我的教學論壇有網路學員提的問題:
[問題詢問]如何修改VBA讓EXCEL自動轉存成PDF時不會出現副檔名 [連結]
先學會如何用EXCEL VBA批次另存成2003與CSV等格式 [連結]
與如何用EXCEL VBA自動批次匯入圖片與超連結 [連結]
與如何增加EXCEL VBA按鈕 [連結]
本範例主要是利用VBA的Workbooks物件的ExportAsFixedFormat方法,
可以一鍵就可以批次將EXCEL檔案批次匯出成PDF或其他格式,
這個範例主要是延續之前進階課裡提到的檔案自動匯出的觀念而來的,
如果沒有這方面概念者,建議還是要完整有系統學習為好,
比較重要的幾個簡易技巧有:
1.Application物件的FileDialog屬性,可以取得檔案或資料夾,回傳為字串。
2.用Dir函數,可以得知並列舉某資料夾中的所有檔案,直到找不到為止。
3.配合Do While迴圈,可以不斷列舉檔案,直到找不到檔案為止。
最後,配合Left與Len函數,可以將PDF檔名去除舊的xlsx附檔名訊息,
這是入門可成有教過的應用。
大數時代來臨如果不懂得裡用自動化方式處理資料,
處理資料將非常沒有效率,
至於處理大數據的方案很多,
但最通行也沒有額外費用的大概只剩VBA了。
而且開啟EXCEL就包含VBA,除了在Windows外,
MAC蘋果電腦一樣也有EXCEL,
VBA也可以沿用以前VB的資源,這樣看來VBA處理大數據應該沒有什麼對手了。
範例連結 [下載]
結果畫面:
上課內容:
01_轉檔結果畫面
02_操作介面
03_程式撰寫畫面
04_轉換成PDF檔多了附檔名
05_修改輸出時檔名的後5個字
06_修改結果沒有副檔名
程式碼:
vba do while 在 吳老師excel函數與vba大數據教學 Facebook 的最佳解答
如何用EXCEL VBA批次轉PDF檔
完整連結:http://terry55wu.blogspot.tw/2015/08/excel-vbapdf.html
這是在我的教學論壇有網路學員提的問題:
[問題詢問]如何修改VBA讓EXCEL自動轉存成PDF時不會出現副檔名 [連結]
先學會如何用EXCEL VBA批次另存成2003與CSV等格式 [連結]
與如何用EXCEL VBA自動批次匯入圖片與超連結 [連結]
與如何增加EXCEL VBA按鈕 [連結]
本範例主要是利用VBA的Workbooks物件的ExportAsFixedFormat方法,
可以一鍵就可以批次將EXCEL檔案批次匯出成PDF或其他格式,
這個範例主要是延續之前進階課裡提到的檔案自動匯出的觀念而來的,
如果沒有這方面概念者,建議還是要完整有系統學習為好,
比較重要的幾個簡易技巧有:
1.Application物件的FileDialog屬性,可以取得檔案或資料夾,回傳為字串。
2.用Dir函數,可以得知並列舉某資料夾中的所有檔案,直到找不到為止。
3.配合Do While迴圈,可以不斷列舉檔案,直到找不到檔案為止。
最後,配合Left與Len函數,可以將PDF檔名去除舊的xlsx附檔名訊息,
這是入門可成有教過的應用。
大數時代來臨如果不懂得裡用自動化方式處理資料,
處理資料將非常沒有效率,
至於處理大數據的方案很多,
但最通行也沒有額外費用的大概只剩VBA了。
而且開啟EXCEL就包含VBA,除了在Windows外,
MAC蘋果電腦一樣也有EXCEL,
VBA也可以沿用以前VB的資源,這樣看來VBA處理大數據應該沒有什麼對手了。
範例連結 [下載]
vba do while 在 吳老師教學部落格 Youtube 的最佳解答
EXCEL用VBA的DO_WHILE迴圈切割儲存格中的所有超連結
上課內容:
01_切割儲存中的所有超連結字串
02_用MID與FIND函數切割與改用VBA
03_用VBA切割第一個連結並思考所有連結
04_用VBA的DO_WHILE迴圈切割所有連結
完整影音
http://goo.gl/aQTMFS
教學論壇:
https://groups.google.com/forum/#!forum/scu_excel_vba2_107
與前幾期的課程雖然用的是相同的範例,但最大的不同在:
1.除了解說建函數公式,並將之轉成自訂函數,把複雜的公式變簡單。
2.如何將複雜的公式變成簡單的按鈕,按下按鈕就自動完成工作。
內容主要分成:
單元01_資料拆解相關(VBA基礎)
單元02_表單設計
單元03_輸入自動化與表單與資料庫
單元04_工作表合併
單元05_資料查詢(篩選與分割工作表)
單元06_批次查詢
單元07_從雲端硬碟下載資料
單元08_下載網路資料
單元09_工作表相關
單元10_活頁簿與檔案處理(工作表分割與合併活頁簿)
單元11_表格與圖表處理(自動繪製圖表)
單元12_圖案處理(快速匯入圖片到EXCEL)
有講義與範例和完成的畫面公式與程式碼,
只要按照每周的順序學習,學會EXCEL VBA自動化絕非難事,
優點:
1.可非線性學習:可按照自己最不熟的部分多次學習。
2.可反覆學習:有疑問可以多次聽講,保證學的會。
3.可攜帶學習:只要有瀏覽器就可以播放SWF檔,MAC電腦也沒問題。
上課參考用書:
看!就是比你早下班-50個ExcelVBA高手問題解決法
作者:楊玉文 出版社:松崗
Excel VBA一點都不難:一鍵搞定所有報表
作者:?Excel Home
出版社:博碩
課程理念:
1.以循序漸進的方式, 透過詳細的說明和實用的Excel VBA範例, 逐步了解整個 VBA 的架構與輪廓,進而學習 VBA 變數、函式及邏輯的觀念, 即使沒有任何程式設計基礎, 也能自己親手撰寫 VBA 程序來提昇工作效率, 晉身職場 Excel 高手! 2.進而解說EXCEL與資料庫的結合,將EXCEL當成資料庫來使用,結合函數、VBA等更深入的功能,讓資料處理和分析的應用更上層樓。 3.將結合GOOGLE雲端試算表,教您如何將EXCEL函數雲端化與網路化。
更多EXCEL VBA連結:
01_EXCEL函數與VBA http://terry28853669.pixnet.net/blog/category/list/1384521
02_EXCEL VBA自動化教學 http://terry28853669.pixnet.net/blog/category/list/1384524
吳老師 2020/1/8
EXCEL,VBA,函數東吳進修推廣部,EXCEL,VBA,函數,程式設計,線上教學,excel,vba,教學,excel,vba指令教學,vba範例教學excel,,excel,vba教學視頻,excel函數教學,excel函數說明,excel函數應用
vba do while 在 吳老師教學部落格 Youtube 的最佳貼文
文大Python程式入門或證照第7次用懶人包恢復快速PYTHON環境&重點回顧與全省郵局地址合併&使用os的walk方法取得所有檔案&os的system執行DOS指令&錄製匯入文字檔巨集與修改&DO迴圈與DIR函數&證照704與702重點解說
上課內容:
01_用懶人包恢復快速PYTHON環境
02_重點回顧與全省郵局地址合併
03_使用os的walk方法取得所有檔案
04_使用os的system執行DOS指令
05_錄製匯入文字檔巨集與修改
06_批次匯入文字檔用For迴圈
07_批次匯入文字檔用DO迴圈與DIR函數
08_用VBA下載大樂特歷史資料
09_用VBA刪除列與資料剖析
10_用EXCEL統計中獎機率與排名
11_用VBA取出前七名號碼
12_按照1到7名順序排列
13_證照704與702重點解說
完整影音
http://goo.gl/aQTMFS
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/pccu_python_2018_2
懶人包:
EXCEL函數與VBA http://terry28853669.pixnet.net/blog/category/list/1384521
EXCEL VBA自動化教學 http://terry28853669.pixnet.net/blog/category/list/1384524
TQC+Python證照目錄:
Python 第1類:基本程式設計
技能內容:變數與常數、指定敘述、標準輸入輸出、運算式、算術運算子、數學函式的應用、格式化的輸出Python 第2類:選擇敘述
技能內容:if、if...else、if…elif
Python 第3類:迴圈敘述
技能內容:while、for…in
Python 第4類:進階控制流程
技能內容:常用的控制結構、條件判斷、迴圈
Python 第5類:函式(Function)
技能內容:函式使用、傳遞參數、回傳資料、內建函式、區域變數與全域變數
Python 第6類:串列(List)的運作(一維、二維以及多維)
技能內容:串列的建立、串列的函式、串列參數傳遞、串列應用
Python 第7類:數組(Tuple)、集合(Set)以及詞典(Dictionary)
技能內容:數組、集合、詞典的建立、運作及應用
Python 第8類:字串(String)的運作
技能內容:字串的建立、字串的庫存函式、字串的應用
Python 第9類:檔案與異常處理
技能內容:文字I/O、檔案的建立、寫入資料與讀取資料、二進位I/O、編碼(Encoding)、異常處理
課程簡介:入門
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
VBA重要函數到Python
檔案處理
資料庫處理
課程簡介:進階
網頁資料擷取與分析、Python網頁測試自動化、YouTube影片下載器
處理 Excel 試算表、處理 PDF 與 Word 文件、處理 CSV 檔和 JSON 資料
實戰:PM2.5即時監測顯示器、Email 和文字簡訊、處理影像圖片、以 GUI 自動化來控制鍵盤和滑鼠
上課用書:
參考書目
Python初學特訓班(附250分鐘影音教學/範例程式)
作者: 鄧文淵/總監製, 文淵閣工作室/編著
出版社:碁峰? 出版日期:2016/11/29
吳老師 107/12/3
EXCEL,VBA,Python,文化推廣部,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境
vba do while 在 吳老師教學部落格 Youtube 的精選貼文
文大Python程式入門或證照第7次用懶人包恢復快速PYTHON環境&重點回顧與全省郵局地址合併&使用os的walk方法取得所有檔案&os的system執行DOS指令&錄製匯入文字檔巨集與修改&DO迴圈與DIR函數&證照704與702重點解說
上課內容:
01_用懶人包恢復快速PYTHON環境
02_重點回顧與全省郵局地址合併
03_使用os的walk方法取得所有檔案
04_使用os的system執行DOS指令
05_錄製匯入文字檔巨集與修改
06_批次匯入文字檔用For迴圈
07_批次匯入文字檔用DO迴圈與DIR函數
08_用VBA下載大樂特歷史資料
09_用VBA刪除列與資料剖析
10_用EXCEL統計中獎機率與排名
11_用VBA取出前七名號碼
12_按照1到7名順序排列
13_證照704與702重點解說
完整影音
http://goo.gl/aQTMFS
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/pccu_python_2018_2
懶人包:
EXCEL函數與VBA http://terry28853669.pixnet.net/blog/category/list/1384521
EXCEL VBA自動化教學 http://terry28853669.pixnet.net/blog/category/list/1384524
TQC+Python證照目錄:
Python 第1類:基本程式設計
技能內容:變數與常數、指定敘述、標準輸入輸出、運算式、算術運算子、數學函式的應用、格式化的輸出Python 第2類:選擇敘述
技能內容:if、if...else、if…elif
Python 第3類:迴圈敘述
技能內容:while、for…in
Python 第4類:進階控制流程
技能內容:常用的控制結構、條件判斷、迴圈
Python 第5類:函式(Function)
技能內容:函式使用、傳遞參數、回傳資料、內建函式、區域變數與全域變數
Python 第6類:串列(List)的運作(一維、二維以及多維)
技能內容:串列的建立、串列的函式、串列參數傳遞、串列應用
Python 第7類:數組(Tuple)、集合(Set)以及詞典(Dictionary)
技能內容:數組、集合、詞典的建立、運作及應用
Python 第8類:字串(String)的運作
技能內容:字串的建立、字串的庫存函式、字串的應用
Python 第9類:檔案與異常處理
技能內容:文字I/O、檔案的建立、寫入資料與讀取資料、二進位I/O、編碼(Encoding)、異常處理
課程簡介:入門
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
VBA重要函數到Python
檔案處理
資料庫處理
課程簡介:進階
網頁資料擷取與分析、Python網頁測試自動化、YouTube影片下載器
處理 Excel 試算表、處理 PDF 與 Word 文件、處理 CSV 檔和 JSON 資料
實戰:PM2.5即時監測顯示器、Email 和文字簡訊、處理影像圖片、以 GUI 自動化來控制鍵盤和滑鼠
上課用書:
參考書目
Python初學特訓班(附250分鐘影音教學/範例程式)
作者: 鄧文淵/總監製, 文淵閣工作室/編著
出版社:碁峰? 出版日期:2016/11/29
吳老師 107/12/3
EXCEL,VBA,Python,文化推廣部,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境
vba do while 在 [VBA ] Do while 迴圈跳不出來- 看板Visual_Basic - 批踢踢實業坊 的推薦與評價
各位好,魯妹是VB自學初心者
本週在複習Do while 時 發現寫出來的迴圈永不不止息阿阿阿阿
魯妹本來的預想是希望可以藉由do while檢查inputbox 的數值是否可以正確執行
若無法,則顯示msgbox提醒
所以就有了下列寫法,
i = InputBox("Start Value")
If i = "" Then End
Do While i <> ""
If i = intger Then Exit Do
Select Case InputBox("Start Value")
Case IsNumeric(i) = False: MsgBox "請數入數字": i = InputBox("Start
Value")
Case i <= 0: MsgBox "數值不得為負": i = InputBox("Start Value")
End Select
Loop
j = InputBox("End Value")
If j = "" Then End
Do While j <> ""
If j = intger Then Exit Do
Select Case InputBox("End Value")
Case IsNumeric(j) = False: MsgBox "請數入數字": j = InputBox("End Value")
Case j <= 0: MsgBox "數值不得為負": j = InputBox("End Value")
If i = j Then j = j + 1
End Select
Loop
還請好心的大大提點,到底是哪裡出了問題阿阿
魯妹先謝謝大家了m(_ _)m
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.40.23.201
※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1484972847.A.B0C.html
... <看更多>