oo4o - クリップボードに結果を転送するAdvertisementCopyToClipboard
OraDynasetにはExcel専用メソッドCopyToClipboardが用意されています。このメソッドを使用すると現在OraDynasetに格納されている問い合わせ結果を一括してクリップボードに転送することができます。
一般的に、取得した行数が多い場合はカーソルで一行ずつループするより、一括してクリップボードにコピーすることができるCopyToClipboardメソッドを使用したほうが処理が速くなります。 書式
OraDynasetオブジェクト.CopyToClipboard _
[コピーする最大行数], [列区切り文字], [行区切文字]
サンプルコード
Private Sub CommandButton1_Click()
Dim OraSession As Object
Dim OraDatabase As Object
Dim OraDynaset As Object
On Error Resume Next
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = _
OraSession.OpenDatabase("sampleDB", "scott/tiger", 0)
If Err.Description <> "" Then
MsgBox Err.Description, vbOKOnly + vbCritical, "接続エラー"
Exit Sub
End If
Set OraDynaset = OraDatabase.CreateDynaset("SELECT * FROM emp", &H0&)
OraDynaset.CopyToClipboard
ThisWorkbook.ActiveSheet.Cells(1, 1).Select
ActiveSheet.Paste
If Err.Description <> "" Then
MsgBox Err.Description, vbOKOnly + vbExclamation, "エラー"
Exit Sub
End If
Set OraDynaset = Nothing
Set OraSession = Nothing
Set OraDatabase = Nothing
End Sub
Advertisement |
ショートカット・634・634ブログ ・このカテゴリのトップページに戻る ・Incubator(Pukiwiki) ・634ラボ UIコレクションギャラリー ZO-3ジェネレーター サイト検索Y!ログール |