Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Excel VBA删除日期并将其放置在列中_Excel_Vba - Fatal编程技术网

如何使用Excel VBA删除日期并将其放置在列中

如何使用Excel VBA删除日期并将其放置在列中,excel,vba,Excel,Vba,因此,我有一个数据输出,以以下形式输出,日期持续一个月: 9/1/2014 Team Quantity Tom 1 Jim 2 9/2/2014 Team Quantity Tom 1 Jim 2 我必须手动删除每行顶部的日期,并将其放入一列中,以便从中创建透视表。是否有任何VBA代码可以从最上面一行获取日期并将其放入如下列中: Team Q

因此,我有一个数据输出,以以下形式输出,日期持续一个月:

9/1/2014  
Team        Quantity  
Tom            1  
Jim            2

9/2/2014  
Team        Quantity  
Tom            1  
Jim            2
我必须手动删除每行顶部的日期,并将其放入一列中,以便从中创建透视表。是否有任何VBA代码可以从最上面一行获取日期并将其放入如下列中:

Team       Quantity     Date  
Tom           1          9/1/2014  
Jim           2          9/1/2014 etc...

Team       Quantity     Date  
Tom           1          9/2/2014  
Jim           2          9/2/2014 etc...

唯一的问题是一个团队每个月可以管理的行数是可变的。有什么建议吗?

这是我根据这些小信息给你的建议。我已经为您创建了一个模板,这就是它的外观

你必须在运行程序的地方加上标签,另一个是你把数据放进去的地方。

所以,如果你看一下我输入的数据,我要做的就是按下run按钮,这就是它的样子。

下面是运行按钮的代码

Sub btnRun()
'declare variables
Dim ToBeFound, strVar1, strVar2 As String
Dim rng As Range

ToBeFound = "Team"

'Activate and selete sheet1 than select A1
Sheets("DataTab").Activate
Range("A1").Activate

For x = 1 To 1000
Set rng = Cells.Find(What:=ToBeFound, LookIn:=xlValues, lookat:=xlWhole)

If IIf(rng Is Nothing, "", rng) = "" Then
MsgBox "Complete"
Exit Sub

Else
rng.Activate
ActiveCell.Value = "Team:"
ActiveCell.Offset(0, 2).Value = "Date"
strVar1 = ActiveCell.Offset(-1, 0).Value
ActiveCell.Offset(-1, 0).EntireRow.Delete

For i = 1 To 100
ActiveCell.Offset(1, 0).Activate
If ActiveCell.Value = "" Then
Exit For

Else
ActiveCell.Offset(0, 2).Value = strVar1
End If
Next i
End If
Next x

End Sub
这是一个模板,它已经完成了所有的工作,您所做的就是将数据加载到数据选项卡并推送运行。

是的,这很容易,数据是如何发布的,这些信息将帮助我满足您的需要,并使这项工作做得更好。所有这些数据都在一列中,并且总是放在同一个excel文件中吗?比如说,如果你制作了一个模板excel文件,那么将数据导出到模板中并保存下来,这样你就可以始终使用相同的excel文件code@StortmasterQ这看起来与之前的情况大不相同。数据以上面列出的第一种格式显示。我可以使用模板文件粘贴提取的信息,并使用相同的vb代码。请看我的答案,让我知道。