我首先要尝试做的是,我有一个包含大量数据的 CSV 文件。
第一列 A 包含日期和时间,以空格分隔,例如 03/11/2017 12:55:34。
我想选择两个日期之间的单元格,例如03/11/2017 12:55:34
到03/11/2017 15:55:34
,然后使用文本到列分隔选定范围的日期和时间,最后绘制分隔时间及其对应值的图形。
代码无需进行文本到列的转换即可正常运行。但我不知道在选择范围后如何进行文本到列的转换。
在此我附上了代码。
Function getData()
Dim findrow As Long, findrow2 As Long
Dim dataTable As Range
findrow = Range("A:B").Find("3/13/2017 15:49:57.108", Range("A1")).Row
findrow2 = Range("A:B").Find("3/13/2017 16:04:57.098", Range("A" & findrow)).Row
Set dataTable = Range("A" & findrow + 1 & ":B" & findrow2 - 1)
Set getData = dataTable
End Function
Sub SelectBetween()
Dim rng As Range
Dim cht As Object
'Your data range for the chart
Set rng = getData()
rng.Select
'Create a chart
Set cht = ActiveSheet.Shapes.AddChart2
'Give chart some data
cht.Chart.SetSourceData Source:=rng
'Determine the chart type
cht.Chart.ChartType = xlLine
cht.Chart.ChartTitle.Text = Cells(1, 1).Value
cht.Chart.SetElement (msoElementLegendBottom)
cht.Chart.SeriesCollection(1).Name = "=""CPU Processor Time"""
cht.Chart.Axes(xlValue).MinimumScale = 0
cht.Chart.Axes(xlValue).MaximumScale = 100
End Sub