逗号通过vba与唯一值分开

问题描述 投票:-1回答:2

enter image description here你好吗,我想通过vba编程需要数据。你能帮助我吗?

以下是原始数据。

USERID QTY Loc 14405 18 India 34479 18 UK 38155 14 India 35365 19 UK 47669 17 Nepal 51680 18 Jermani 16124 14 china 51915 20 India 14405 11 UK 34479 14 India 38155 14 UK 35365 14 Nepal 47669 12 Jermani 51680 13 china 16124 16 India 51915 10英国14405 16印度34479 17英国38155 20尼泊尔

以下是必填格式

USERID Loc QTY 14405 India,UK 45 16124 china,India 30 34479 India,UK 49 35365 Nepal,UK 33 38155 India,Nepal,UK 48 47669 Jermani,Nepal 29 51680 china,Jermani 31 51915 India,UK 30

vba excel-vba excel
2个回答
0
投票

在这里,您将了解一些标准的Excel功能。

  1. 将数据粘贴到单个单元格中,并使用“文本”分割到“数据”选项卡上的列:

First

  1. 将数据拆分为空格分隔:

Second

  1. 复制所有数据并粘贴特殊转换为单列形式:

Third

  1. 整理,删除顶行。然后使用这个公式=IF(MOD(ROW();3)=1;OFFSET($A1;COLUMN()-3;0);"del"),例如在C1中并将其扩展到下两列,因此总共有三列。

Fourth

  1. 向下拖动以匹配您的数据:

Fifth

  1. 将所有数据复制到另一个区域作为值(右键单击或粘贴特殊):

Sixth

  1. 按照您希望的方式移动列,完成后按ctrl + f键del作为搜索的短语,在find下的结果框中选择一个结果并执行ctrl + a。这将突出显示所有匹配的单元格,您可以右键单击一次删除所有匹配的单元格。

Seventh

  1. 完成

Done


0
投票

我假设你的字符串在A1单元格中。

Sub Macro1()

    Range("A1").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False

    Dim i As Long
    Dim j As Integer
    Dim k As Long
    i = 2
    For k = 1 To Range("A1").End(xlToRight).Column
        For j = 1 To 3
        Cells(i, j).Value = Cells(1, k).Value
        Next
        i = i + 1
    Next

End Sub
© www.soinside.com 2019 - 2024. All rights reserved.