DataGridViewのデータをExcelに表示・印刷する方法

このQ&Aのポイント
  • Vb2005とaccess2003で開発している場合、DataGridViewにデータを表示させているが、印刷をExcelで行いたい。しかし、データがバラバラになってしまう問題が発生している。
  • DataGridViewには改行表示されたデータをExcelのセルに貼り付けようとしているが、正しく表示されない。
  • DataGridViewのデータをExcelに移す方法を探しており、効果的な方法を教えてほしい。
回答を見る
  • ベストアンサー

DataGridViewの内容をExcelに表示させたい

Vb2005とaccess2003で開発しています。 よろしくお願いします。 DataGridViewにデータを表示させているのですが、印刷をExcelで行おうと思っています。 DataGridViewには、以下のSQLで、ひとつのセルに2つのデータを改行表示させています。 テーブル1.商品コード&Chr(13)+Chr(10)&テーブル2.数量 「Ctrl」+「c」キーでセルを選択して、Excelへ貼り付けると、 改行してあるデータ(数量)が違うセルに入ってしまい、データがバラバラになってしまいます。 Excelのセルにも、DataGridViewと同じ形式(改行表示)でデータを入れることはできないでしょうか? また、「Ctrl」+「c」キーでExcelに貼り付ける以外に、DatGridViewのデータをExcelに移す方法はありますでしょうか?印刷をするためにExcelに移動させようと思っていますが、何か良い方法がありましたらアドバイスお願い致します。

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

  • ベストアンサー
回答No.1

以前、データセットをそのままエクセルに吐くサンプルを載せました。 http://okwave.jp/qa2196798.html >DataGridView これのデータソースを引っこ抜いて、データセットとして取得できたら、上記の履歴を応用することで、可能だと思います。

nanacyanyo
質問者

お礼

回答ありがとうございました。 サンプルのあるページを拝見しました。 自分用にカスタマイズして実装してみようと思います。 アドバイスありがとうございました。

関連するQ&A

  • DataGridViewのセルに改行して表示

    VB2005、Access2003で開発しています。よろしくお願いします。 DataGridViewのセルに改行表示をしたいと思い、色々試したのですがうまくいきません。 データテーブル 日付  コード  数量 10/1    1     3 10/2    2     10 DataGridViewには、ひとつのセルに「コード」と「数量」のデータを並べて表示してるんですが、わかりにくいので、「数量」のデータを改行して表示したいと思っています。 色々と調べて試したのですが、うまくいきません。 WrapModeをTrueにしたら、改行できるみたいなことはわかったのですが、そのまま表示されてしまいます。 コードにSQL文を書いてDataGridViewに表示させているのですが、SQL文に何か足さなくてはならないのでしょうか? テーブル1.コード&'('&テーブル1.数量&')',''))As … と現在は()に数量を表示させてるんですが、セルに「1(3)」と表示されてしまいます。 どなたか教えてください。よろしくお願いします。

  • DataGridViewについて

    DataGridViewにデータセットのテーブルを全件表示するのは簡単に出来ますが、10件だけ表示することって出来るのでしょうか? やり方がわからなくて困っています。 SQL文で絞ってデータセットにセットするやり方以外であれば 教えてください。

  • DataGridView

    初めて質問させて頂きます。 最近VB2005を始めたばかりの初心者ですので、くだらない質問だったら、スミマセン。 VB2005でDataGridViewを使ってSQLサーバーのテーブル内容を表示させています。 その中で日時を表示させる項目(セル)がありますが、0:00の場合に時刻部分がデータセットへ読み込みされません。 良い対処方法を知っていたら教えて下さい。 よろしくお願いします。

  • 【datagridview のDataSourceでdatagridv

    【datagridview のDataSourceでdatagridviewにデータを表示して、URLをハイパーリンクで表示する。】 いつもお世話にになります。 さて、DBにテーブルがあり、それにはひとつのカラムしかないと仮定します。そのカラムの内容はURL(例:http://www.okwave.jp)です。そのテーブルをDataSourceに設定してdatagridviewに表示する事はできました。しかし、このURLはハイパーリンクではないので、クリックしてもブラウザに自動的に表示されません。 どうにか、以下の方法で、セルの文字列ををハイパーリンクとして設定をする事ができましたが、どうやらこれの方法は新しくカラムを追加をしてしまうようです。(.addメソッドでカラムを追加してするようです。)自分が実現したいのでは、すでにあるカラムをハイパーリンクにしたいのです。 DataGridViewLinkColumn dgvlc1 = new DataGridViewLinkColumn(); dgvlc1.DataPropertyName = "link"; dgvlc1.HeaderText = "URL"; dgvlc1.Width = 400; dataGridView1.Columns.Add(dgvlc1); DataSourceを使ってdatagridviewにデータを表示した後、ハイパーリンクにする方法はあるのでしょうか? よろしくお願い致します。

  • VB2005 DataGridViewでセルデータ貼付後、貼付したデータの全体を選択した状態に出来ますか?

    DataGridviewのセルのデータを[Ctrl]+[C]でコピーし、セルを移動し[Ctrl]+[V]でデータの貼り付けをすると、カーソルはデータ最後の文字の後にきます。 この状態を、貼り付けした文字全体を選択した状態にしたいのですが、出来ますでしょうか? よろしくお願いいたします。

  • DataGridViewに画像を表示する方法

    言語:Microsoft Visual Studio 2008 データベース:SQL Server 2005 非接続型のデータアクセスです。 現在,上記環境で.netを勉強し始めたところです。 そこでDataGridViewに画像を表示するプログラムを作成したいのですが、うまくいきません。 色々調べたのですが思うようにいかないので,アドバイスをいただければと思います。 <テーブル> ID  画像 1  C\aaa.jpg 2  C\bbb.jpg 3  C\ccc.jpg <画像がない時に表示する画像> C\null.gif 自作したコードは下記の通りです。でもこれだと"null.gif"がセルに表示されるだけで、データ毎に 持っている画像を表示できません。コーディングがそうなので仕方がないのですが… レコード毎に画像を表示する方法を教えて下さい。 Private Sub frmDataGridViewTest_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load   Dim strsql As String   Call DBConnect() '---DB接続   strsql = "SELECT ID, 画像 FROM テーブル ORDER BY ID"   Dim comm As SqlCommand = New SqlCommand(strsql, Con)   Dim dataadapter As SqlDataAdapter = New SqlDataAdapter(comm)   dataadapter.MissingSchemaAction = MissingSchemaAction.AddWithKey   Dim ds As DataSet = New DataSet()   dataadapter.Fill(ds, "テーブル")   dgrview.DataSource = ds   dgrview.DataMember = "テーブル"   '****************************** 'DataGridViewの列に画像を表示する   '******************************   Dim ImageColumn As New DataGridViewImageColumn()   ImageColumn.Name = "Image"   ImageColumn.ValuesAreIcons = False   ImageColumn.Image = New Bitmap("C\null.gif")   ImageColumn.ImageLayout = DataGridViewImageCellLayout.Zoom   ImageColumn.Description = "イメージ"   dgrview.Columns.Add(ImageColumn)   Call Disconnect() '---DB切断 End Sub

  • DataGridViewにてセル以外をクリックしたか判別

    VB2005Expressにて開発を行っています。 データテーブルの値をDataGridViewにセットして表示しています。 そこで、データが表示されている部分でなく、セルのない部分 をクリックされたかを判別したいのですが、どのようにしたらいい のでしょうか。 ご存知の方がいらっしゃいましたら教えてください。 よろしくお願いします。

  • datagridviewよりエクセルへエクスポートする際について

    datagridviewよりエクセルへエクスポートする際について Accessに接続して、クエリから得られる結果をdatagridviewに表示して セルの範囲を指定してエクセルへエクスポートをしています。 範囲指定をしないで、罫線を引く事は可能でしょうか? (エクスポートした際に、文字が入っているセルに対して罫線を引きたいと思っております。) 理由:データの削除や登録が行なわれた場合、コードを変更する必要がある為です 以下がコードになります。 '保存 xlSheet.Cells.Font.Size = 10 xlSheet.Columns("A:B").ColumnWidth = 9.0 xlSheet.Columns("C").ColumnWidth = 14.0 xlSheet.Columns("D:E").ColumnWidth = 16.0 xlSheet.Columns("F").ColumnWidth = 19.0 xlSheet.Range("A1:F172").Borders.LineStyle = Excel.XlLineStyle.xlContinuous xlBook.SaveAs("c:テスト") ご教授頂けると助かります。 使用環境 XP(SP3) vb.net2008ExpressEdition Excel2007 Access2000 以上、宜しくお願いします。

  • エクセルの数式表示/非表示が切り替わらない・・・

    データに関数を入れても、結果でなく数式が表示されてしまいます。 [Ctrl]キー+[Shift]キー+[`](アクサングラーブ)キー で通常数式の表示非表示が変わるはずですが、なぜか何度やっても数式のまま変わらないセルがあるのです。(他のセルでは、数式と値が切り替わってくれるセルもあります) なにか原因があるのでしょうか?それともどこか別な設定が必要なところがあるのでしょうか? 非常に困っています。どなたかよろしくお願いします。

  • DataSetの複数テーブルをひとつのDataGridViewでまとめて出したい

    こんにちは、いつも参考にさせていただいています。 VS2005のC#で制作しているのですが、 ひとつのデータセットの中に3つのテーブルがあります。 そのテーブル全てをデータグリッドビューでだしたいのですが、 ひとつのテーブルしか上手に出ません。 3つのテーブルをひとつのグリッドビューに出す方法を教えてください。 現状は以下のコードで一つのテーブルだけ表示しています。 dv = new DataView(dataset.Tables["data"], "", "", DataViewRowState.CurrentRows); dataGridView1.DataSource = dv;

専門家に質問してみよう