国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 辦公 > Excel > 正文

Excel表格中vba宏幫助你按條件拆分兩個單元格中的數字

2024-08-23 19:53:11
字體:
來源:轉載
供稿:網友

  Excel工作表的A1單元格和B1單元格中有兩個數字,這兩個數字有一部分相同,現在要找出其中相同的數字并寫入單元格C1,找出A1中有而B1中沒有的數字并寫入單元格D1,找出B1中有而A1中沒有的數字并寫入單元格E1。

  如下面的工作表圖片:

Excel表格中vba宏幫助你按條件拆分兩個單元格中的數字 CUOxin.COM

  我不知道給出的數字是否都是按這樣的規律,即第一個原始數據的后面幾位數與第二個原始數據的前面幾位數相同。如果是這個規律的話,則可以就這個具體的例子給出下面的代碼來實現:

  Sub SeparateNumber()

  Dim strFirst As String

  Dim strResult As String

  Dim StartNum As Integer

  Dim EndNum As String

  Dim i As Integer, j As Integer

  strFirst = Left(Range(”B1&PRime;), 1)

  StartNum = InStr(1, Range(”A1″), strFirst)

  j = 1

  For i = StartNum To Len(Range(”A1″))

  EndNum = Mid(Range(”A1″), i, 1)

  If EndNum = Left(Range(”B1″), j) Then

  j = j + 1

  End If

  Next i

  If j > 1 Then

  strResult = Mid(Range(”A1″), StartNum, i - 1)

  End If

  ‘單元格C1中的數據

  Range(”C1″).Value = strResult

  ‘單元格D1中的數據

  Range(”D1″).Value = Left(Range(”A1″), StartNum - 1)

  ‘單元格E1中的數據

  Range(”E1″).Value = Right(Range(”B1″), Len(Range(”B1″)) - j)

  End Sub

  代碼很簡單,只是運用了幾個VBA函數。

  討論:

  其實代碼可以進一步簡化,因為VBA還有一個數組函數(Split函數)。

  如果要將其變為通用的,則可將上述代碼轉化為自定義函數,并用相對量代替代碼中的硬編碼。

  兩個單元格中的數字如果不是按上面提到的規律,則可能兩個單元格中的數字中間部分相同,而其它部分不同;或者一個單元格中的數字結尾部分和另一個單元格中的數字的中間部分相同;等等。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南川市| 南澳县| 遵义市| 南陵县| 山西省| 肥城市| 兴安县| 张北县| 客服| 韶关市| 吉安市| 高淳县| 紫云| 通州市| 鄂托克前旗| 建昌县| 廉江市| 宜州市| 壶关县| 察隅县| 东莞市| 桃园市| 美姑县| 万全县| 罗甸县| 元朗区| 沈丘县| 宁都县| 达孜县| 巴林左旗| 闻喜县| 辽中县| 洪江市| 平阴县| 油尖旺区| 比如县| 郸城县| 五河县| 叙永县| 阜新市| 赣榆县|