エクセル vba初心者です。
(1)ini fileからデータを取得
(2)その内容のリストボックスに表示
(3)リストボックス内容をテキストボックスに出力
(2)、(3)がわかりません。
なんとなくやってたら余計にわからなくなりました。助けてください。
Private Sub CommandButton1_Click() '読込み(1)を押した時の処理
Dim listbox As String
Dim strL_Data As String '取得した値
Dim n As Integer
n = FreeFile
ListBox1.Clear
Open "C:\filepath.ini" For Input As #n
Do While Not EOF(n)
Line Input #n, listbox
ListBox1.AddItem listbox
Loop
Close #n
End Sub
Private Sub CommandButton2_Click() '書込み(1)を押した時の処理
Dim listbox As String
Dim strL_Data As String '取得した値
Dim n As Integer
n = FreeFile
Open "c:\example.txt" For Output As #n
Print #n, strL_Data
Close #n
End Sub
よろしくお願いいたします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
ANo.1です。
あー…ANo.2氏のを見て気が付いたのですが、
「出力は選択された1行」という可能性もありますな…
その場合は、私が書いた「ループが必要」云々は忘れてください。
(何にせよ、結局出力したいのはどういうデータなのかという説明は
欲しいですが)
No.3
- 回答日時:
6.0系列か、.NETの質問なのか書かないと最近は正確な解答にならないと思う。
6.0系列と推定してーー
前半は質問のコードを見ずに同じようなコードでうまく行きました。
テキストファイルからリストボックスにアイテムを表示
私の場合aaa6.txtの場合
Private Sub CommandButton2_Click()
Dim strL_Data As String '取得した値
Dim n As Integer
n = FreeFile
ListBox1.Clear
Open "C:\Documents and Settings\XXXX\My Documents\aaa6.txt" For Input As #n
Do While Not EOF(n)
Line Input #n, strL_Data
MsgBox strL_Data
ListBox1.AddItem strL_Data
Loop
Close #n
End Sub
ーー
>書込み(1)を押した時の処理
は質問をするものにとっては独りよがりでないですか。
何をするのか。
第1データを読んでPrint(シーケンシャルファイル書き込みに)しているが
>リストボックス内容をテキストボックスに出力
では同じようなロジックになると思うが。
ーー
元のファイルから直接やるなら
Private Sub CommandButton3_Click()
Dim strL_Data As String '取得した値
Dim n As Integer
n = FreeFile
ListBox1.Clear
Open "C:\Documents and Settings\XXXX\My Documents\aaa6.txt" For Input As #n
Do While Not EOF(n)
Line Input #n, strL_Data
MsgBox strL_Data
s = s & strL_Data & vbCrLf
Loop
TextBox1.MultiLine = True
TextBox1.Text = s
Close #n
End Sub
ーー
リストボックスからやる理由は何なのかな。
下記はVBAでやっているが、参考にして、Formなどの例に書き換えてください。
Sub test01()
Worksheets("Sheet1").TextBox1.Text = ""
n = Worksheets("Sheet1").ListBox1.ListCount
'Worksheets("Sheet1").ListBox1.Clear
For i = 0 To n - 1
MsgBox Worksheets("Sheet1").ListBox1.List(i)
s = s & Worksheets("Sheet1").ListBox1.List(i) & vbCrLf
Next i
Worksheets("Sheet1").TextBox1.MultiLine = True
Worksheets("Sheet1").TextBox1.Text = s
End Sub
No.2
- 回答日時:
ListBoxのClickイベントを処理して TextBoxへデータを設定しましょう
Private Sub ListyBox1_Click()
TextBox1.Text = ListBox1.List( ListBox1.ListIndex)
End Sub
出力に関しては
Private Sub CommandButton2_Click() '書込み(1)を押した時の処理
Dim strL_Data As String '取得した値
Dim n As Integer
n = FreeFile
' テキストボックスにデータがセットされているなら出力
if TextBox1.Text<>"" then
strL_Data = TextBox1.Text
Open "c:\example.txt" For Output As #n
Print #n, strL_Data
Close #n
End if
End Sub
といった具合でしょう
No.1
- 回答日時:
まず
>(2)その内容のリストボックスに表示
なんですが、何が不明なんでしょう?
一応、Ini(つーかテキスト)の中身は出力されますよね?
単純に中身を出力するのではダメなのであれば、
その詳細を再度説明してください。
>(3)リストボックス内容をテキストボックスに出力
については…
>Private Sub CommandButton2_Click()
の中の処理で、そもそもListBox1を参照してないじゃないですか。
Printで使用しているstrL_Dataにデータを代入している箇所も無いし。
まずは、ちゃんとListBoxの中身を参照する術を調査して、
その中身をstrL_Dataに反映してください。
調べていけば気付くかもしれませんが、書き込む際にも
ループ処理は必要ですよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 貼り付けた値が消えていく 以下はソースファイルの2番目のシートのB6から最終行を取得 ターゲットファ 2 2023/07/27 12:23
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
アクセスVBAのMe!と[ ]
Access(アクセス)
-
エクセルVBA ListBoxの並び替え:VBA初心者です
Visual Basic(VBA)
-
-
4
ListBoxのデータを高速でファイルに書き込む方法 VB.NET
Visual Basic(VBA)
-
5
テキストファイルの読み込みとリストボックスへの反映
Visual Basic(VBA)
-
6
ユーザーフォーム スクロールバー 非表示にしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
printfとputcharの違いは
-
coutで出力した文字を消去する...
-
VBAで有効数字の設定
-
テキストファイルから特定の文...
-
詳しくないので、どなたかお教...
-
【エクセル、並び替えについて】
-
COBOLのMOVEで桁数が異なる場合
-
アクセスでエクセルに出力する...
-
ACCESSからExcelへエクスポート...
-
printfですぐに出力
-
CRC16計算について
-
4Kの外部モニターに出力すると...
-
VBAでテキスト出力時のスペース...
-
プログラムについての質問です...
-
無線とかアンテナに関しの質問...
-
C#について質問【足し算】
-
Windows Formアプリからコンソ...
-
makeで文字化けする。migwのmak...
-
リストボックスの内容を テキ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
4Kの外部モニターに出力すると...
-
MMDでavi出力が出来ない
-
プログラムについての質問です...
-
コンセントの電力は入力と出力...
-
AIに回答させるって
-
OBS配信すると、マイクが途切れ...
-
VBAでテキスト出力時のスペース...
-
cout と cerrの違い
-
アクセスでエクセルに出力する...
-
printfとputcharの違いは
-
ACCESS クエリ→フォーム...
-
VBAのExecメソッドで画面を非表...
-
COBOLのMOVEで桁数が異なる場合
-
テキストファイルから特定の文...
-
VBAで有効数字の設定
-
coutで出力した文字を消去する...
-
Windows Formアプリからコンソ...
-
KEYENCEのシーケンスプログラム...
-
CRC16計算について
おすすめ情報