VBA按指定日期段提取三列不重复数据到一列(按列竖向提取),请大师指导代码如何写

renzhe 2019-09-01 08:33:03
三列数据区域:A2:A100,B2:B100,C2:C100 提取顺序:A-B-C 提取到:F列 提取内容:不重复值(唯一值)。
...全文
495 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
liulang0808 2019-09-03
  • 打赏
  • 举报
回复
Sub test()
arr = Range("A2:C100")
Set d = CreateObject("scripting.dictionary")
For j = 1 To UBound(arr)
For i = 1 To UBound(arr, 2)
d(arr(j, i)) = ""
Next i
Next
[d2].Resize(d.Count) = WorksheetFunction.Transpose(d.keys)
MsgBox "提取完成!"
End Sub
milaoshu1020 2019-09-01
  • 打赏
  • 举报
回复
写好了,代码如下:

Option Explicit

Sub 提取不重复值()
Dim objRange As Range
Set objRange = Sheet1.Range("A2:C100")

Dim dctData As Object
Set dctData = CreateObject("scripting.dictionary")

Dim objSubRange As Range
For Each objSubRange In objRange
dctData.Item(CStr(objSubRange.Value)) = Null
Next

Dim i As Integer
i = 2

Dim varKey As Variant
For Each varKey In dctData
Sheet1.Cells(i, "F") = varKey
i = i + 1
Next

MsgBox "提取完成!"
End Sub

下载地址:
链接:https://pan.baidu.com/s/18Ds2VICCOVnd5UgU9q9DRQ
提取码:cr2g

运行示例:

2,503

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧