エクセル2007でデータ入力を便利にする方法

このQ&Aのポイント
  • エクセル2007の便利な機能であるデータフォームを使えば、セルごとに入力欄が表示されるため、データの入力がスムーズに行えます。
  • しかし、データフォームの入力欄の大きさは固定されており、使いにくい場合があります。
  • セルの幅を変更する方法を試してみましたが、全ての入力欄が最大サイズになってしまう結果となりました。そのため、自分でフォームを作り、VBAプログラムを使用する必要があるかもしれません。
回答を見る
  • ベストアンサー

エクセル2007で

入力する項目を分かりやすくして入力しやすくするために データフォームという便利な機能が有る事を知りました。 セルの項目ごとに入力欄が表示されるので次々とデータを入力していくのには凄く便利だと思いました。 ですが、入力欄の大きさが固定されているので少し使いにくいです。 この入力欄の大きさを自由に変更することはできないのでしょうか? セルの幅を広げたら、最大サイズのセルの大きさに全ての入力欄がなってしまいます。 例えば、 Aは1文字分の大きさでいいけど、Bは5文字分。 Cは横10文字で5行分の大きさ などのように自由に変更することはできるのでしょうか? 出来るのであれば設定の仕方を教えてほしいです。 出来ないのであれば、自分でフォームを作ってvba?でプログラミングをしないと無理でしょうか?

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

>入力欄の大きさが固定されているので少し使いにくいです。 >この入力欄の大きさを自由に変更することはできないのでしょうか?  ⇒見出し行の一番広いセル幅で統一されますので、自分でフォームを作って見ては   如何でしょうか。   参考のURLを添付しますのでご確認下さい。

参考URL:
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_userform.html

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

各テキストボックスの長さ(幅)は固定になってます。どうしようもない。 Googelででも「エクセル データフォーム」で照会してみてください。 余りMSはデータフォームに力を入れていないようで、VBAでも(例えばマクロの記録を取って、そのコードを加工・追加などして)、データフォームの拡張した機能や画面設定などを用意してくれれば良いのに、それは用意されていないようです。 ーー VBAでユーザーフォームで作るほか無いでしょう。 http://www.ken3.org/vba/backno/vba063.html のような記事もあった。 ーー アクセスなら、「連結」という仕組みもあり、フィールドリストから全フィールドを掴んで、フォームへの1回のD&Dで一発で入力フォームが出来るが。でもとりあえずは、各フィールド(テキストボックス)の幅は同じ幅で作成される。 ーー 幅やMaxLengthはあるのは知っているが、そもそも、(VBA,VB,VB.NETで)テキストボックス(のプロパティ)に「何文字分」の指定はあるのだろうか?(在ればわたしの不勉強です。)フォントサイズとの関係もあるし。

関連するQ&A

  • Excelで作成したフォームからデータをシート上に反映したい

    初心者です。 同じ形式のデータを、項目ごと(フォームでつくった入力欄ごと、って言い方でわかりますでしょうか)にセルに振り分けて、 上から順にシート上に入力していきたいのです。 VBAマクロをつかって作ってみたのですが、一つの行に対してしか反映しないものしか作れませんでした。 何か良い方法はありませんか?

  • エクセルでのフォームについて

    現在エクセル2000にて簡易的な顧客管理システムを作っております。 基本的にはVBAやアクセスを使えば思うようなものが作れると思うのですが 技術的な問題と時間的な問題よりできるだけ簡単なものを考えております。 そこでエクセルの標準的な機能のフォーム機能を発見いたしました。 メニューバーの「データ」-「フォーム」から呼び出す機能です。 ほぼ考えている機能に近いのですが簡単にできるがゆえに少し画面など変更したいのですが できるかわかりません。 たとえば フォームの入力の欄が少し小さいので大きくしたり表示的なものを中心とした程度の 変更をしたいのですがこの機能について情報が少なすぎてわかりません。 ご存知の方いらっしゃいましたらぜひ教えてください。 また今回は短時間でエクセルを使った顧客管理システムの構築を目的としております。 フリーソフトで項目数や項目名などを思うように変更できる自由度が高いものがあれば ぜひご紹介いただけますでしょうか。 よろしくお願いいたします。

  • エクセルVBAの質問です

    エクセルVBAで フォームを作成し、 フォームに入力された情報を フォーム内の一番最後の入力項目の入力が終わった時点で、 ワークシートに転記しようとしたいと思っています。 Userformのソースに記載してみましたが、 うまくいきませんでした。 どのような処理の流れにするといいでしょうか? 1.フォームにデータが入力される 2.フォームの一番最後の項目が入力された時点で、 フォームからB・C・D列に転記される。 3.フォームの内容がリセットされる 4.フォームの一番最初に入力が戻る 5.フォームの一番最後の項目が入力された時点で、 前回の入力セルの2行下のB・C・D列に転記される。 6.フォームの×をクリックすると転記終了 という流れです あまり詳しくなく的を得た質問になっていないかもしれないのですが、よろしくお願いします。

  • Access2010 テキスト型をスペース埋めずに

    Access2010でテキスト型の項目に、テーブルを開いて直セル入力orコピペでデータを入力すると、最大文字長(255文字)まで後ろにスペースが埋められるのですが VBAでADOを使ってデータをINSERTするとスペース埋めされないようです。 これはAccessの仕様ですか? それとも私の勘違いでしょうか。 できればスペース埋めずに登録したいのですが・・・。

  • エクセルVBAの構文を教えてください。

    こんばんは。マクロ初心者です。 VBAの構文を教えてください。 ■シート(1)には項目が50ある5年分(60ヶ月)の市場統計データーがあります。50個ある項目名はB列にありDセル2008年1月からBKセル2012年12月まで横に60ヶ月分のデーターを入力しています。 ■シート(2)には50の項目名のデータがあります。項目名はB列にあります。 ■シート(3)にはコンボボックスを作成し、コンボボックスの下に表を作成しました。 シート(3)のコンボボックスの50ある項目から▼ボタンで項目を選びコマンドボタンを押すと シート(3)の下記のセル範囲でシート(1)のデーターを参照させたいのです。 B8セルからM8セルまで(2008年度12か月分のデータ) B11セルからM11セルまで(2009年度12か月分のデータ) B14セルからM14セルまで(2010年度12か月分のデータ) B17セルからM17セルまで(2011年度12か月分のデータ) B20セルからM20セルまで(2012年度12か月分のデータ) コンボボックスは設定できたのですが、構文がうまくできないため参照できていません。 エクセルVBAに詳しい方、どうぞご教授ください。よろしくお願い致します。

  • エクセルVBAでの検索

    みなさんこんにちは。私は今仕事で使っているエクセルのデータをVBAを使って簡単にしたい!!と日々パソコンに向かっています。けれどなかなか進まず… 助けてください。 ユーザーフォームのテキストボックスに入力した特定の文字列を、データが載っているシートから検索し、その文字列が入力されているセルの左右のセルのデータをシートの特定の場所に表示させたいのですが。 どなたかお分かりになりますか? 私がやりたいことが上手く説明出来ているのか… スゴク不安なのですが…。説明が下手で申し訳ありません。  皆さんからの回答をお待ちしております。

  • エクセルのセル入力と表示

    エクセルのセルへの文字入力でセルからはみ出しても、隣のセルが空セルであれば、文字列が隣のセルへもはみ出して表示できていて、隣に文字列がある場合はセル幅分だけしか表示できなかったものが、隣が空セルにも関らずセル幅分だけしか表示できなくなってしまいました。 [オプション]、[全般]の中でフォントサイズを10に変更してからこのようになってしまったようです。 前のように文字列が隣のセルにはみ出して表示できるように戻したいのですが、どうしたら良いか教えてください。

  • EXCELのマクロで・・・

    数値や文字列などが入力されてるセルを自動で範囲指定し、計算式が入っていないところだけを、クリアするにはどのようなVBAを書けばいいんですか? あれば、すごく便利なんですが。 どなたか、教えて下さい。

  • Excelでキーワード検索(異なるブックで)

    現在、シートのA2にキーワード欄を設けて、A5:Z5以下にあるデータ(文字列)から 該当した文字のみサイズ変更と該当セルの色づけをVBAで行っています。 キーワードが1つずつしか検索出来ないことと、A5以下のデータ(文字列)を 別のブックから都度貼り付けることに不便を感じております。 そこでご質問ですが キーワードとデータを異なるブックで用意し、キーワード側のVBAでデータファイルを 検索し、文字サイズとセルの色づけを実施するのはVBAで可能でしょうか。 (キーワードは複数有り、増減します。) 尚、VBAは入門レベルです。 宜しくお願い致します。

  • エクセルの文章入力についてです。

    エクセルの文章入力についてです。 「折り返して全体を表示する」のように一定の文字列の幅でセルごとに分ける事はできないでしょうか? 一つのセルにある文章を入力するのは容易です。 しかし、与えられた横書きの書式は一定の文字数を入力すると、わざわざ下のセルに移動して途切れの悪い文字からの入力を強いられることになります。 要は、一旦1つのセルに入力した文章を、「折り返して全体を表示する」のように行が変わる毎に一つ下のセルに移動して一定数の列幅まで文字を入力したら一つしたのセルに移動して…を繰り返す表示は可能でしょうか。 「長さ」がキーワードかと思い、vbaのlenやlenbで試してみましたが一定の列幅に対して文字列の長さが一定せず「折り返して全体を表示する」のようには綺麗に表示されません。 ちなみにLenB(StrConv(Cells("A1"), vbFromUnicode))も試して見ましたがイマイチです。 もしかしたら、vbaなど使わなくても簡単にできるものなのでしょうか? 「折り返して全体を表示する」のように一定の文字列の幅でセルごとに分ける事はできないでしょうか?

専門家に質問してみよう