一段簡單的VBA代碼,讓你自如操作Excel! 上篇 神奇的VBA系列-017 中, 我們使用嵌套Relace函數(shù)對指定字符進行了嵌套。 Sub 分離A列數(shù)組至旁邊列中() ........ txt = Replace(Replace(Cells(x, 1), "/", "*"), "-", "*") ........ End Sub 但是在更多應用中,數(shù)據(jù)中可能會有更多不同的字符,需要集中替換掉。 嵌套更多的Relace函數(shù),會使代碼看上去很混亂沒條理,可讀性差。 此時,我們可以選擇使用數(shù)組存儲各種不同的分隔字符,通過數(shù)組結合循環(huán)語句集中替換文本字符串中的特定字符, 我們重新寫個代碼示例。 重新描述下上篇的場景需求:下面采購清單表中A列的數(shù)據(jù)混亂(品名數(shù)量單位型號都寫在了一起,不利于分類匯總),現(xiàn)在需要根據(jù)數(shù)據(jù)中的/、 * 、-等字符分裂數(shù)據(jù),并將采購品的品名,型號,數(shù)量和單位分別寫在旁邊相應的單元格中。 采購清單表 代碼運行演示 代碼示例 在標準模塊中加入如下代碼即可實現(xiàn)上面的演示功能。 Sub 分離A列數(shù)組至旁邊列中_示例2() '創(chuàng)建一維數(shù)組 Dim arr(0 To 1) arr(0) = "/" arr(1) = "-" '創(chuàng)建變量brr Dim brr '遍歷單元格區(qū)域 For x = 2 To ActiveSheet.UsedRange.Rows.Count '獲取A列相應單元格值 txt = Cells(x, 1) '統(tǒng)一替換單元格中的相關字符為星號(*) For Each ele In arr txt = Replace(txt, ele, "*") Next '將Split分裂函數(shù)的返回值賦給brr變量 brr = Split(txt, "*") '將數(shù)組元素值放置到指定單元格中 Cells(x, 2) = brr(0) Cells(x, 3) = brr(1) Cells(x, 4) = brr(2) Cells(x, 5) = brr(3) Next End Sub 動手試一試,屏幕前的你, 復制代碼運行下吧~~! 有關Excel VBA編程知識(職場牛人必備秘技),可下載安裝使用職場人必備的工具《神奇的VBA》插件,一款嵌入進Excel Ribbon界面,打開任意Excel工作簿就能隨時查閱學習VBA編程的Excel 插件。 插件下載地址戳鏈接:《神奇的VBA》-職場牛人都在使用的Excel插件 《神奇的VBA》選項卡樣式 神奇的VBA使用演示圖 |
|
來自: 神奇的ExcelVBA > 《神奇的VBA-系列文章》