OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

Excelへのデータ送信

  • 困ってます
  • 質問No.169274
  • 閲覧数82
  • ありがとう数1
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 31% (10/32)

CSVファイルから構造体にデータを取り込んでから、そのデータをExcelにセルを指定して取り込むことは可能ですか?
構造体には取り込めたのですが、そこからExcelにデータを遅れません。
アドバイス下さい!
お願いします!
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル12

ベストアンサー率 65% (276/422)

プロジェクトの参照設定で
Microsoft Excel x.0 Object Libraryを指定
(x.0はエクセルのバージョンによって、違う数字です)

以下のコードでデータの出力が可能です。
Sub Main()
  Dim xlApp  As Excel.Application
  Dim xlBook As Excel.Workbook
  Dim xlSheet As Excel.Worksheet
 
  'エクセル起動
  Set xlApp = New Excel.Application
  '(1)ワークブックを開く場合
  xlApp.Workbooks.Open ("c:\test.xls")
  '(2)ワークブックを新規で追加する場合
  xlApp.Workbooks.Add
  
  '現在カレントのブックを対象とする
  Set xlBook = xlApp.ActiveWorkbook
 
  'カレントブックのシート1を指定
  Set xlSheet = xlBook.Worksheets(1)
  xlSheet.Select
 
  'エクセルへの出力方法(1)
  xlSheet.Cells(2, 3).Value = "あ"
  'エクセルへの出力方法(2)
  xlSheet.Range("B2").Value = "い"
 
  'エクセルアプリケーション表示
  xlApp.Visible = True
 
  '閉じる時の「保存しますか」を表示させない
  xlBook.Saved = True
 
  Set xlSheet = Nothing
  Set xlBook = Nothing
  Set xlApp = Nothing
End Sub


構造体は独自で宣言した構造ですよね。それはエクセルじゃなくても、独自の構造体は他への流用は難しいと思います。
エクセルには一つずつ書き込むか、構造体ではなく配列にして、エクセルに出力する時に範囲指定をして、まとめて出力する方法があります。

'エクセルへの出力方法(2)をちょっと改造して
Range(開始のセル,終了のセル).Value = 配列変数
といった書式です。
お礼コメント
dmn

お礼率 31% (10/32)

ありがとうございました。
この通りにやって無事解決しました。
投稿日時 - 2001-11-26 14:33:10
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1
レベル14

ベストアンサー率 33% (1403/4213)

構造体をEXCELは理解してくれないでしょうが。 構造体のメンバーをCHR(9)で連結して送信すればよかったような記憶があります。
構造体をEXCELは理解してくれないでしょうが。

構造体のメンバーをCHR(9)で連結して送信すればよかったような記憶があります。
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ