ここから本文です

VBAのユーザーフォームについて。

capslockshiftctrl954さん

2011/3/209:55:09

VBAのユーザーフォームについて。

現在、顧客名簿をエクセルのVBAで管理をしています。
その際、エクセルに打ち込んである行をクリックすると、ユーザーフォームが
出現し、行に入力されている全てを顧客データとして、
一覧で表示させるVBAを作成したいのですが、
どのようなプロシージャを作成すればいいのかわかりません。

VBAの本を購入し、コードも勉強していますが、
現段階では本を見ながら、独自のVBAを作成する段階まで至っていません。

教えていただければ助かります。


セルには顧客名、住所、電話番号、購入履歴などを入力しています。

閲覧数:
418
回答数:
3

違反報告

ベストアンサーに選ばれた回答

ruta_aj0104さん

2011/3/211:54:26

サンプルを示しておきますので、コードの記述場所や意味は調べてみてください。

シート名:Sheet1
フォーム名:UserForm1
ラベル名:Label1~4

【Sheet1のイベントプロシージャーに記述】
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next 'エラー無効
'A1:D11にアクティブセルが無い場合は終了
If Intersect(Target, Range("A1:D11")) Is Nothing Then Exit Sub

myRow = Target.Row 'アクティブセルの行数を取得
Unload UserForm1 'フォームを閉じる
UserForm1.Show 0 'フォームを開く(vbModelessモード)
End Sub

【標準モジュールに記述】
'フォームに渡す変数
Public myRow As Long

【UserForm1のプロシージャーに記述】
Private Sub UserForm_Initialize()
With Sheets("Sheet1")
Label1.Caption = .Cells(myRow, 1).Value
Label2.Caption = .Cells(myRow, 2).Value
Label3.Caption = .Cells(myRow, 3).Value
Label4.Caption = .Cells(myRow, 4).Value
End With
End Sub

とりあえずは、自分なりにコードを作成してみて、うまくいかない部分のアドバイスをもらった方が良いと思います。
1問1答的な感じで質問すると、的確な回答が得られやすいですよ。
がんばってください。

投稿画像

質問した人からのコメント

2011/3/9 12:16:12

詳しくご丁寧にありがとうございました。
感謝致します。

ちょい足しを取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

このQ&Aで解決しましたか?質問する

閉じる

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

siogetusiさん

2011/3/210:24:10

項目が少ない場合は、組み込みのフォームを使う方法もあります。

顧客名 住所 電話番号 購入履歴 といったラベルをシートに作成し、フォームを表示させると、下図のように表示されます。
項目間をTabで移動し、新規でEnterを押すと1行データが書き込まれます。簡単な検索もできます。

フォームの表示の仕方

2003までは、データ → フォーム

2007以降
クイックアクセスツールバーのカスタマイズ → その他のコマンド → すべてのコマンド → フォーム
をクイックアクセスツールバーに追加します。

投稿画像

ちょい足しを取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

ta_bo_722さん

2011/3/210:18:58

この説明で丸投げはどうかと思いますよ・・・。
とりあえず自分で作ってみてわからないところを部分的に聞きましょう。

今、誰かにコードを載せてもらっても自分で改良できないと意味がありません。
もう少し勉強を進めるか、手探りでいいのですこしずつ自分のちからで
作ってみてください。

ちょい足しを取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

ID/ニックネームを選択し、「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

ほかのID/ニックネームで利用登録する