- ベストアンサー
データ抽出について
Excelに1秒間隔に取得したデータが1万行以上あります。 この1秒間隔のデータを1分間隔で間引きしたデータに変換したいと 思っているのですが、容易に間引く方法を教えてください。 60行間隔で手動削除するには行数が多くて困っております。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 補足です。 =SMALL(IF(IF(MOD(ROW($A$1:$A$10000),60)=0,$A$1:$A$10000,"")<>"",$A$1:$A$10000,""),ROW()) は、配列数式です。A列に抽出したいデータがあるとします。B以下行1に入力したら、Shift+Ctrl+Enter 押してください。 {=SMALL(IF(IF(MOD(ROW($A$1:$A$10000),60)=0,$A$1:$A$10000,"")<>"",$A$1:$A$10000,""),ROW())} になります。以下、下方へフィルドラッグしてください。 なお、「=0」を「=1」などに変えれば、抽出の行が変わります。
その他の回答 (2)
- nattocurry
- ベストアンサー率31% (587/1853)
こんな感じでどうでしょう? Sub test() Const FirstRow = 2 'データの先頭行 Dim r '行カウンタ r = FirstRow Do While Application.WorksheetFunction.CountA(Rows(r)) Rows(r + 1).Resize(59).Delete r = r + 1 Loop End Sub
- okormazd
- ベストアンサー率50% (1224/2412)
基本的には下記でいいと思うが、データがない領域ではエラー値が表示される。これを避けるには、エラーなら""にしろと書けばいいが長くなる。 =SMALL(IF(IF(MOD(ROW($A$1:$A$10000),60)=0,$A$1:$A$10000,"")<>"",$A$1:$A$10000,""),ROW())