
私がやろうとしているのは、まず膨大な量のデータを含む CSV ファイルを用意することです。
最初の列 A には、日付と時刻がスペースで区切られ、03/11/2017 12:55:34 のように表示されます。
2つの日付の間のセルを選択したい。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