Excel VBA質問箱 IV

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

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


10134 / 13646 ツリー ←次へ | 前へ→

【23495】連続しない複数のセル WANKO 05/3/24(木) 17:56 質問[未読]
【23496】Re:連続しない複数のセル IROC 05/3/24(木) 18:06 回答[未読]
【23520】Re:連続しない複数のセル WANKO 05/3/25(金) 14:05 お礼[未読]

【23495】連続しない複数のセル
質問  WANKO  - 05/3/24(木) 17:56 -

引用なし
パスワード
   初めまして。
題名の通り連続しない複数のセルを選択して、一つずつ値を読みとって処理をしたいと思っています。

 A  B  C  D  E
1 NO1 NO2 NO3 NO4 NO5
2

という例があったとします。
別にNO1.txt,NO2.txt…という1行目のセルと同じなファイル名のテキストファイルがあり、それを開いてテキストファイルのデータを2行目以下に書きこんで行くという処理なのですが、A1とC1とD1に該当するテキストファイルだけについて処理する、というのはどの様にすれば良いのでしょうか?

また、メッセージボックスで、『どのファイルを読みこみますか?』などとユーザーに1列目の中から値を取り出したいテキストファイルに該当する名前が入ったセルを選ばせたいのですが、上記例の様に、一部分だけ連続していたり、1列全てを選択し全部連続して選択したような形であっても、同じコードで処理できるのでしょうか?

何分説明が下手なもので、この内容でお分かり頂けるかどうか心配なのですが、また補足説明させて頂きますので、宜しくお願い致します。

【23496】Re:連続しない複数のセル
回答  IROC  - 05/3/24(木) 18:06 -

引用なし
パスワード
   >題名の通り連続しない複数のセルを選択して、
>一つずつ値を読みとって処理をしたいと思っています。
選択しなくても処理は可能です。


>A1とC1とD1に該当するテキストファイルだけについて処理する
Dim i As Long

 For i = 1 To 5
   Select Case i
   Case 1, 3, 4
     MsgBox Cells(1, i).Value
   End Select

 Next i


>『どのファイルを読みこみますか?』などとユーザーに

Dim r As Range
Dim x As Range
 
 On Error Resume Next
 Set x = Application.InputBox("どのファイルを読みこみますか?", Type:=8)
 If Err.Number <> 0 Then Exit Sub
 On Error GoTo 0
  
  For Each r In x
     MsgBox r.Value
  Next r

【23520】Re:連続しない複数のセル
お礼  WANKO  - 05/3/25(金) 14:05 -

引用なし
パスワード
   IROCさん、ありがとうございます。

>選択しなくても処理は可能です。

質問させて頂いた内容の書き方が悪く、申し訳ありません。
選択しなくても可能というのは、処理したい部分が固定の場合ですよね。

できれば、テキストファイルを変更した場合、それのみを指定して読みこむ事と、新規で空のシートにテキストファイルのデータを入れたい場合(番号が入っている全てのセルを選択することになると思います)の両方を満たしたかったので、ユーザーに『読みこむファイルをどれにするのか?』と言う事を聞きたかったのです。

選択させた場合のコードも書いて下さって、本当にありがとうございます。
参考にさせて頂きます。

また宜しくお願い致します。

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