求教大神 横向粘贴问题

DL_Zora 2021-01-27 11:23:25
根据Sheet1中B列日期的对应月份,把A列对应的数字根据相应的月份横向粘贴到Sheet2中,Sheet2中A列是Sheet1中A列可是单元格粘贴过来的



...全文
158 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jieru_liu 2021-02-19
  • 打赏
  • 举报
回复

Sub macro()

Sheets(1).Select

Dim rng As Range
Set rng = Range("a1", Cells(Rows.Count, "d").End(xlUp))
rng.AutoFilter Field:=4, Criteria1:="=1"

Intersect(Range("a:a"), rng.SpecialCells(xlCellTypeVisible)).Copy Sheets(2).[a1]

Dim ret_rng As Range
Set ret_rng = Intersect(Range("c:c"), rng.SpecialCells(xlCellTypeVisible))

Dim m_rng As Range
Set m_rng = Sheets(2).[b1:m1]

Dim i%, m%, v%
Dim rg As Range
i = 1
For Each rg In ret_rng
'For i = 2 To ret_rng.Count
If rg.Row = 1 Then GoTo 100
m = Month(rg)
i = i + 1

v = rg(1, 0)

Select Case m
Case 9
Sheets(2).Cells(i, 2) = v
Case 10
Sheets(2).Cells(i, 3) = v
Case 11
Sheets(2).Cells(i, 4) = v
Case 12
Sheets(2).Cells(i, 5) = v

Case Else
Sheets(2).Cells(i, m + 5) = v
End Select
100:
Next

End Sub


jieru_liu 2021-02-19
  • 打赏
  • 举报
回复
你的问题没描述清楚。

是先筛选“D列”中等于1的数据,
然后把“B列”的数据 根据《“A列”的项目名和“C列”的月份》对应填到 sheet2 中吗
不懂别说哎 2021-01-27
  • 打赏
  • 举报
回复
看我发的VB EXCEL基础,根据那个操作两个表应该没有问题

2,462

社区成员

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

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