我有一家电子商务商店的产品数据有很多行,包括大小和颜色等。我需要将每个版本都放在单独的行中,以便我可以上传所有这些数据。我认为我需要某种Excel公式或VBA。
Title Size
Ladies Dress S,M,L,XL,XXL
Men's Trousers S,M,L,XL,XXL
所需数据:
Title Size
Ladies Dress S
Ladies Dress M
Ladies Dress L
Ladies Dress XL
Ladies Dress XXL
Men's Trousers S
Men's Trousers M
Men's Trousers L
Men's Trousers XL
Men's Trousers XXL
我只是在Google Spreadsheet上放置了2个示例行,以便我可以共享。
答案 0 :(得分:0)
这是我为PC编写子程序的方式;我将尽力使函数调用尽可能地通用和跨平台。
Option Explicit
Sub sizeExpansion()
Dim i As Long, szs As Variant
With Worksheets("sheet1")
For i = .Cells(.Rows.Count, "B").End(xlUp).Row To 2 Step -1
szs = Split(.Cells(i, "B").Value2, ",")
If CBool(UBound(szs)) Then
.Cells(i, "A").Resize(UBound(szs), 1).EntireRow.Insert
.Cells(i, "A").Resize(UBound(szs) + 1, 1) = .Cells(UBound(szs) + i, "A").Value2
.Cells(i, "B").Resize(UBound(szs) + 1, 1) = Application.Transpose(szs)
End If
Next i
End With
End Sub