2010年11月11日

ActiveX3.テキストボックスコントロール

  A B C D E F G H
1  
  • 3.テキストボックスコントロール
     テキストボックスは、値の定まっていない自由な入出力に使います。
    (値が定まっているデータの受け渡しには、リストボックスなどの方が適?)
    埋め込みオブジェクトの書式 [ =EMBED("Forms.TextBox.1","") ]
     
    ◆項目名セルの上隣のセルを右クリックすると、VBAマクロでテキストボックスを追加する
     テキストボックスのサイズは、セルの幅・高さに合わせて調節されます。
    ◆オプションボタンで選択したデータ行の個々のセルと、「テキストボックス」をリンクさせる
     テキストボックスのテキストを編集すると、セルのデータも同時に編集されます。
    ◆行選択状態で右クリックすると、全ての「テキストボックス」を削除する

3.テキストボックスコントロール

 ワークシートは、セルと呼ばれる小箱が組み合わされているようなものです。そのセルの中に、数字・文字・数式などを見栄え良く書式設定を行って帳票とします。「数」を基盤としたものなので、ワープロのように多彩な装飾機能はもっていません。

 セル同士は、列や行としてつながっているため、1つのセルの幅を変更すると、セル幅はその列に含まれるセルの共通事項なので列全体がそのセル幅に揃えられ、高さを変更すると、行全体のセルの高さが一緒になります。

 ワークシート上に配置するテキストボックスコントロールは、もともとがデータの受け渡しに使用するActiveXコントロールですから、セルにも増して装飾機能などは持ちません。では、わざわざテキストボックスをワークシートに配置する理由とは何でしょうか。[ =EMBED("Forms.TextBox.1","") ]

 ワークシートにデータを溜め込んでいくと、画面を縦、又は横にスクロールさせることが多くなります。ウインドウ枠を固定したり分割したりして、狭いモニターに目一杯のデータ項目を表示させるわけですが、常に全ての項目が表示される必要はないでしょう。

ExcelVBAマクロ

 そこでベーシックな方法として、カード型リレーショナルデータベース的にワークシートを運用する方法があります。データの編集は、形の決まったフォームを使用して、必要な項目だけを必要なときに呼び出し、必要な項目の内容だけを編集します。

 「2.オプションボタンコントロール」で紹介したブックに、テキストボックスコントロールをマクロで動的に追加するコードを加えました。

ワークシートにマクロでテキストボックスを作るサンプル[ TextBox.xls ]
※必ずダウンロードしてから、Excelを使って開いてください。

 サンプルでは、テキストボックス[ =EMBED("Forms.TextBox.1","") ]の配置を「行19のセルB〜H列」に指定してあります。この指定をカード型にレイアウトしたワークシート、また、ユーザーフォーム上で行うと、それらしく見えてくると思います。

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
posted by くきお at 11:11| Comment(0) | ActiveXコントロール | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。