Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


49338 / 76735 ←次へ | 前へ→

【32309】貼り付けた文字列の数列への変換方法
質問  VBA勉強中  - 05/12/12(月) 17:01 -

引用なし
パスワード
   2005,08,01,00,00,00,smp ,  , 6, ,C11 ,  4.081, 381700,  40927, 980.31, 25.3, 394526,  42302, 256.21,00
2005,08,01,00,10,00,smp ,  , 6, ,C11 ,  2.038, 136675,  19110, 980.31, 25.3, 141268,  19752, 531.74,00

というようなファイルがあり、これをエクセルに取り込み指定シートに貼り付けていき,
後で平均値を計算したいのです。
このホームページで調べて改良して下のようなものでファイルを読み込んでいます。

Dim Num As Integer
Dim Rw As Long
Dim LineDat As String
Dim LeftStr As String
Const Cols = 20 ' <--- 取得列数
Dim D, E
Num = FreeFile
Application.ScreenUpdating = False
'Cells.Delete
Range("a:a").Resize(, Cols).NumberFormatLocal = "@"
Open \test.dat For Input As #Num
Do Until EOF(Num)
  Line Input #Num, LineDat
  D = Split(LineDat, ",")
  lineend = LineDat
  E = Split(lineend, Chr(13))
  ReDim Preserve D(Cols)
  ReDim Preserve E(Cols)

  If Not LeftStr = D(0) Then
    Sheets("a").Select
    Worksheets("a").Range("A1").Resize(, UBound(D)).Offset(Rw).Value = D
'    Worksheets("a").Range("A1").Resize(, UBound(D)).NumberFormatLocal = "@"

    LeftStr = D(0)
    LeftStr2 = E(0)
    Rw = Rw + 1
  End If
  If Not LeftStr = E(0) Then
    LeftStr = Chr(13)
   End If
Loop
Close #Num
Application.ScreenUpdating = True

これで読み込むと貼り付けられた数値が文字列になってしまい、平均値計算できません。
何か貼り付ける時の方法でよい方法はないでしょうか?

0 hits

【32309】貼り付けた文字列の数列への変換方法 VBA勉強中 05/12/12(月) 17:01 質問
【32329】Re:貼り付けた文字列の数列への変換方法 kobasan 05/12/12(月) 20:41 回答
【32348】Re:貼り付けた文字列の数列への変換方法 VBA勉強中 05/12/13(火) 9:40 お礼
【32336】Re:貼り付けた文字列の数列への変換方法 kobasan 05/12/12(月) 23:19 発言

49338 / 76735 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free