
どなたか教えてください。
Sheet1にユーザーフォームを使用しデータを入力しています。
リストボックスが複数選択した後にコマンドボタンをクリックした際、
選択項目を1行のセル[Cells(myRow, 16)~Cells(myRow, 20)]に左詰めで表示したい場合はどのようにするのでしょうか?
例:リストボックスには10項目あるとして、そのうち1行目、3行目、5行目だけが選択された場合のパターンで、1行目がCells(myRow, 16)、3行目がCells(myRow, 17)、5行目がCells(myRow, 18)に表示したいのですが・・・。 最大5項目選択とみています。
※コマンドボタンは他のTextBox等も含まれ、下記のような感じです。
Private Sub CommandButton1_Click()
Dim myRow As Long
Sheets("Sheet1").Select
myRow = Range("A65536").End(xlUp).Offset(1, 0).Row
'各テキストボックの値をセルに入力
Cells(myRow, 1).Value = TextBox1.Value
Cells(myRow, 2).Value = TextBox2.Value
Cells(myRow, 3).Value = ComboBox1.Value
Cells(myRow, 4).Value = TextBox3.Value
Cells(myRow, 5).Value = TextBox4.Value
.
.
.
Cells(myRow, 16).Value =
Cells(myRow, 17).Value =
Cells(myRow, 18).Value =
.
.
.
'セルに入力が各テキストボックの値をクリア
TextBox3.Value = ""
TextBox4.Value = ""
ComboBox2.Value = ""
ComboBox3.Value = ""
'フォーカスをTextBox3に移動
TextBox3.SetFocus
End Sub
No.1ベストアンサー
- 回答日時:
以下がListBox1を複数選択して、セルに転記する部分です。
'--------------------------------------
Dim N As Integer
Dim Clm As Integer
Clm = 15
'''セルへ転記
For N = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(N) Then
Clm = Clm + 1
Cells(myRow, Clm) = ListBox1.List(N)
End If
Next N
'''ListBox1の選択状態の解除
For N = 0 To ListBox1.ListCount - 1
ListBox1.Selected(N) = False
Next N
'-----------------------------------------------
言わずもがなのことですが、
ListBox1は複数選択可能になっていなければいけません。
ListBox1.MultiSelect = fmMultiSelectMulti
onlyrom様、ご連絡遅くなりましてすいません。
ご回答いただいたコードで思い通りの結果が出ました。
お手数お掛けしましてありがとうございました、
感謝申し上げます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAのListBoxで複数選択して...
-
エクセルVBA(実行時エラー438...
-
エクセルテキストボックスの文...
-
ハイパーリンクされているファ...
-
メッセージを1度だけ表示したい。
-
エクセルVBA セル選択後にカレ...
-
【VBA】参照値を1ずつ増やして...
-
EXCELマクロ 保護されているシ...
-
JTableでのCELLの複数選択
-
エクセル:マクロ「Application...
-
Excel 行の連続データを列に参...
-
Excelに入力した個々の日付の数...
-
エクセル逆三角マークで選択項...
-
エクセルの画面で十字マークが...
-
31:30:00が1900/1/1 7:30:0
-
エクセルのセル内に全角数字を...
-
IF関数で空欄("")の時、Null...
-
Excel2010の指マークと白十字マ...
-
エクセルで表示形式の時刻の「0...
-
マウスポインターが白十字のまま
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA(実行時エラー438...
-
EXCELマクロ 保護されているシ...
-
VBAのListBoxで複数選択して...
-
データが入力されている隣のセ...
-
VBAで、貼り付け禁止命令を実現...
-
メッセージを1度だけ表示したい。
-
エクセルテキストボックスの文...
-
ダブルクリックすると現在の時...
-
VBA セルに合わせて移動するが...
-
Swing 編集不可でも選択可能なJ...
-
Jtableの特定のセルの背景色や...
-
ハイパーリンクされているファ...
-
セル色を5秒間隔で変える
-
Excel VBA ダブルクリックで入...
-
VBAで丸をつけたいです。
-
セルに数値が入力されたら別の...
-
Windowsで動くVBAがmacOSで動か...
-
FileSearch2007に変わる構文に...
-
GrapeCityのSpreadの複数セルの...
-
現在 target.value = format(ta...
おすすめ情報