VBA初級者です。
oracleDBのデータをCSVへ出力するマクロをVBAで作成中ですが、実装方法が分からず困っています。
・DB接続はoo4o
・エクセルは2010
・SQLで取得したデータを1レコードづつCSVに書き出したい
・カラム名をヘッダーとして書き出したい
以下のような実現方法でできるか…?と考えたものの、
肝心のマクロ(VBA)でのDBデータの取得⇒CSVへの書き込み方法がいくら調べてもわかりません。
CSVからDBへのインポートはたくさんあったのですが…。
そもそも取得したレコードを配列で保持して書き出す、という考え方が合っているのか?ヘッダー(カラム名)はどのように書き出せばいいか?
など疑問が尽きません。何卒お力添え頂ければ幸いです。
--ボタンクリック時のアクション--
(1)変数定義
(2)DB接続情報確認
(3)DB接続
'DB接続
Set oraSession = CreateObject("OracleInProcServer.XOraSession")
Set oraDatabase = oraSession.OpenDatabase(dbSid, dbUser & "/" & dbPass, ORADB_DEFAULT)
(4)書き込み用のCSVファイルを作る
(5)SQLを実行し返ってきた結果をsplit関数で配列としてwriteListにAddする
(5)作成したCSVファイル内にwriteListのデータをPrint #で書き出す
(6)完了メッセージを表示
MsgBox "完了しました "
(7)DBの切断
'DBクローズ
Set oraDatabase = Nothing
Set oraSession = Nothing
--SQLを実行するメソッド--
(8)SQLを記述、SELECT結果を(5)に返す
恐れ入りますがよろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
「エクセル オラクル 接続」で検索した結果から
お手軽が一番、ExcelをOracleクライアントに
http://www.atmarkit.co.jp/fdb/rensai/excel2oracl …
ExcelからOracleのデータを操作するサンプル
http://www.kihara.net/tips/vba/excel/ora_xls.html
エクセルとオラクル(データベース)を使ってシステムを作成したいのですが
http://detail.chiebukuro.yahoo.co.jp/qa/question …
それとも、SQLの文法が判らないのでしょうか?
No.1
- 回答日時:
その想定した手順に対する実装方法がわからない?
その手順は無視して、とりあえずパパッとやる方法ならいくらでも検索で引っかかるとおもうけど。
http://www.google.co.jp/search?hl=ja&q=oo4o+csv& …
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd …
2つ目の URL では VBA の Open メソッドでテキストファイルを生成しているが、そこは FileSystemObject を使っても問題ないと思う。
というか個人的には FileSystemObject しか使ったことがないが。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Excel(エクセル) CSVファイルでVBAを動かす方法 3 2023/04/04 10:22
- Visual Basic(VBA) ACCESS DAO で不要なテーブルのフィールド(列)の削除 4 2022/06/23 12:13
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
部品表
-
MSFlexGrid 行選択状態
-
COBOL数値転記の仕様
-
「Nullの使い方が不正です」の...
-
batでレジストリキーから読み取...
-
エクセルのセル最終行取得
-
Excel VBAでフォルダ内の全テキ...
-
access vba 『○○件づつ表示』を...
-
VBAでアクセスDBからデータの取...
-
VB webデータの取得
-
【VB.NET】Excelの最終行までの...
-
VB2010で、選択した系列を最前...
-
クリスタルレポートでレコード...
-
エクセルデータをVBで検索でき...
-
DataGridの全行編集状態での行追加
-
【C#】textBoxの指定行のデータ...
-
【エクセルVBA】DBのデータをCSVに
-
VB6のMsFlexGridコントロールに...
-
非同期のプロセス間通信(パイプ...
-
Visual Basic 2010で方形波(矩...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「Nullの使い方が不正です」の...
-
【C#】textBoxの指定行のデータ...
-
【VB.NET】Excelの最終行までの...
-
VBAでアクセスDBからデータの取...
-
Excel VBAでフォルダ内の全テキ...
-
C# DataTableに最後に追加した...
-
XMLでデータとして画像を指定す...
-
VBAコンボボックスの内容が反映...
-
MSFlexGrid 行選択状態
-
COBOL数値転記の仕様
-
クリスタルレポートでレコード...
-
非同期のプロセス間通信(パイプ...
-
ActiveReportのdetailをデータ...
-
アクセスでウェブ上のデータを...
-
Excel VBAでグループ毎に集計す...
-
batでレジストリキーから読み取...
-
富士通(汎用機)のAIMについて
-
Web画面のTableから数字を取得...
-
Excel VBAで1週間毎にカテゴリ...
-
エクセルのCSV読み込みについて
おすすめ情報