VBでたくさんの入力がある表のようなものを作ろうと思います。20行、10列くらいです。これらは実行時編集可能とします。テキストボックスでは作るのが面倒ですし、レイアウトも変更のときに大変です。どのようにすれば簡単にできるでしょうか?


教えてください。

VS2005 VBです。よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:2009/11/05 14:42:12
  • 終了:2009/11/08 13:16:44

回答(3件)

id:HALSPECIAL No.1

HALSPECIAL回答回数407ベストアンサー獲得回数862009/11/05 15:05:11

ポイント39pt

DataGridViewコントロールを紹介します。

http://www.atmarkit.co.jp/fdotnet/special/win20review02/win20rev...


Tipsはこちら、

http://dobon.net/vb/dotnet/datagridview/index.html

http://japan.internet.com/developer/20070522/26.html

http://www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html#i1...


それと、データソースを扱ったりするので、ADO.NETも覚えておいた方がいいですよ。


また、コーディングも面倒だったり、開発効率を上げたいということであれば、

サードパーティー製のコンポーネントを考えてはいかがでしょうか?


このような表計算機能のあるスプレッドはどうでしょう。

セルタイプも多くあり、入力チェック等も支援してくれると思います。(ちょっと高価ですけどね^^;)

http://www.grapecity.com/japan/support/database/p7_344.htm

http://www.grapecity.com/japan/support/database/p7_412.htm

id:goog20090901 No.2

goog20090901回答回数637ベストアンサー獲得回数172009/11/05 17:24:04

ポイント1pt

EXCELオブジェクトを貼り付ける

id:hakkyoku No.3

hakkyoku回答回数32ベストアンサー獲得回数22009/11/06 18:35:54

ポイント40pt

DataGridView がいいと思います。

20行、10列 で固定した場合

Windowsフォームに DataGridView1 という名前でDataGridViewを置く

●Formが開く時のイベントに下記のコードを記述()

'ユーザーが行を削除できないようにする

DataGridView1.AllowUserToDeleteRows = False

'ユーザーが行を追加できないようにする

DataGridView1.AllowUserToAddRows = False

'列数設定

DataGridView1.ColumnCount = 10

'行数設定

DataGridView1.RowCount = 20

'フィールド名を付ける

DataGridView1.Columns(0).Name = "AAA"

DataGridView1.Columns(1).Name = "BBB"

DataGridView1.Columns(2).Name = "CCC"

●ボタンクリックイベントなどでセルの値を参照する例(列、行)

MsgBox(DataGridView1(0, 1).Value)

  • id:Reiaru
    恐らくお求めの事とは異なりますのでコメント欄に書きます。

    通常そういった物は以下の様なコンポーネントを利用して作成します。

    # 使い慣れたExcelでデザインできる帳票ツール 「VB-Report」の新バージョン発表:CodeZine
    # http://codezine.jp/article/detail/4318

    恐らくこの御質問の意図は「自力で Excel と同じものを作りたい」という事だと思います。
    私は過去にそうした事を行った事がありますが、並大抵の知識レベルでは不可能であると断言できます。
    もはや Visual Basic の域のプログラミングではありません。
    ほとんどが API コールによって行われる化け物みたいなプログラムになります。人力検索で回答ができる様な代物ではありません。

    一応、Visual Basic にも標準でそういったコンポーネント
    (記憶では Frex の簡易版やグリッドコントロール ocx) が含まれていたと思いますが、
    そのレベルで納得できるならばそれを使っておくのが良いと思いますよ。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません