Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


26028 / 76736 ←次へ | 前へ→

【56044】Re:選択複数セルのデータ取得
回答  neptune  - 08/5/30(金) 11:34 -

引用なし
パスワード
   ▼Abebobo さん:
おじさん46さん こんにちは

一例です。同じロジックですが、扱い易くなっていると思います。
'/////////////UserFormモジュー//////////////
Option Explicit
'Collectionを使用する
Private mCol As Collection

Private Sub UserForm_Initialize()
  Set mCol = New Collection
  With Me
    mCol.Add .TextBox1
    mCol.Add .TextBox2
    mCol.Add .TextBox3
    mCol.Add .TextBox4
    mCol.Add .TextBox5
    mCol.Add .TextBox6
    mCol.Add .TextBox7
  End With
End Sub

Private Sub CommandButton1_Click()
Dim x As Long
  For x = 1 To 10000
    With Worksheets("Sheet3")
      If .Cells(5 + x, 2).Value = "" Then
        .Cells(5 + x, 2).Value = mCol.Item(2).Text
        .Cells(5 + x, 3).Value = Now
        .Cells(5 + x, 4).Value = mCol.Item(4).Text
        .Cells(5 + x, 5).Value = mCol.Item(5).Text
        .Cells(5 + x, 6).Value = mCol.Item(6).Text
        .Cells(5 + x, 7).Value = mCol.Item(7).Text
         Exit For
      End If
    End With
  Next
  
  With Worksheets("Sheet4")
     .Cells(16, 2).Value = mCol.Item(1).Text
     .Cells(2, 3).Value = Now
     .Cells(5, 2).Value = mCol.Item(3).Text
     .Cells(5, 4).Value = mCol.Item(4).Text
     .Cells(5, 7).Value = mCol.Item(5).Text
     .Cells(5, 5).Value = mCol.Item(6).Text
  End With
  Worksheets("Sheet4").PrintOut
  'TextBoxのクリアは外に追い出す(可読性、メンテナンス性)
  Call ClearText
  UserForm1.Hide

End Sub

'TextBoxをクリアするだけのプロシージャ
Private Sub ClearText()
  Dim i As Long
  For i = 1 To 7
    mCol.Item(i).Text = ""
  Next i
End Sub


Private Sub UserForm_Terminate()
  Set mCol = Nothing
End Sub

ちなみにこれ以上TextBoxが多くなると使い方にもよりますが、多分
私もClassを使うと思います。

興味があれば、「Collection Class」をキーワードに過去ログを検索してみて下さい。
サンプル、情報があります。

>先日、私よりずっと前に わいわい をHNにされている方がいましたので、
>HN代えました。 よく確認せずにわいわいを名乗ってました。
>わいわいさんすみませんでした。
やはりそうでしたか!なんか違うかなとは感じてましたので。納得 ^ ^;
7 hits

【55757】選択複数セルのデータ取得 おじさん46 08/5/18(日) 17:22 質問
【55769】Re:選択複数セルのデータ取得 わいわい 08/5/19(月) 9:34 発言
【55837】Re:選択複数セルのデータ取得 おじさん46 08/5/20(火) 21:14 質問
【55838】Re:選択複数セルのデータ取得 わい 08/5/20(火) 21:27 発言
【55903】Re:選択複数セルのデータ取得 おじさん46 08/5/22(木) 21:26 回答
【55904】Re:選択複数セルのデータ取得 わいわい 08/5/23(金) 0:34 発言
【55921】Re:選択複数セルのデータ取得 わいわい 08/5/23(金) 15:04 発言
【55928】Re:選択複数セルのデータ取得 わいわい 08/5/23(金) 17:43 発言
【55929】Re:選択複数セルのデータ取得 おじさん46 08/5/23(金) 20:33 回答
【55948】Re:選択複数セルのデータ取得 おじさん46 08/5/25(日) 11:32 質問
【55958】Re:選択複数セルのデータ取得 わいわい 08/5/26(月) 9:52 発言
【55969】Re:選択複数セルのデータ取得 おじさん46 08/5/26(月) 23:04 発言
【55970】Re:選択複数セルのデータ取得 わいわい 08/5/27(火) 9:07 発言
【55977】Re:選択複数セルのデータ取得 おじさん46 08/5/27(火) 20:25 発言
【56032】Re:選択複数セルのデータ取得 おじさん46 08/5/29(木) 23:09 発言
【56041】Re:選択複数セルのデータ取得 Abebobo 08/5/30(金) 10:46 発言
【56044】Re:選択複数セルのデータ取得 neptune 08/5/30(金) 11:34 回答
【56047】Re:選択複数セルのデータ取得 Abebobo 08/5/30(金) 13:37 発言
【56057】Re:選択複数セルのデータ取得 おじさん46 08/5/30(金) 20:12 発言
【56062】Re:選択複数セルのデータ取得 おじさん46 08/5/31(土) 13:41 発言
【56074】Re:選択複数セルのデータ取得 neptune 08/5/31(土) 22:33 発言
【56081】Re:選択複数セルのデータ取得 おじさん46 08/6/1(日) 9:30 お礼
【55935】Re:選択複数セルのデータ取得 おじさん46 08/5/24(土) 12:34 発言
【55941】Re:選択複数セルのデータ取得 わいわい 08/5/24(土) 22:22 発言
【55942】Re:選択複数セルのデータ取得 neptune 08/5/24(土) 23:07 発言
【55945】Re:選択複数セルのデータ取得 おじさん46 08/5/25(日) 10:16 発言
【55947】Re:選択複数セルのデータ取得 わいわい 08/5/25(日) 11:05 発言
【56049】Re:選択複数セルのデータ取得 VBWASURETA 08/5/30(金) 14:10 発言

26028 / 76736 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free