Excel VBA質問箱 IV

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

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


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

【5735】テキストファイルの読み出し 03/5/29(木) 9:50 質問
【5744】Re:テキストファイルの読み出し Jaka 03/5/29(木) 12:28 回答
【5782】Re:テキストファイルの読み出し 03/5/30(金) 14:43 質問
【5788】Re:テキストファイルの読み出し Jaka 03/5/30(金) 16:02 回答
【5802】Re:テキストファイルの読み出し 03/5/31(土) 19:29 質問
【5810】Re:テキストファイルの読み出し Jaka 03/6/2(月) 11:31 回答
【5811】Re:テキストファイルの読み出し Jaka 03/6/2(月) 11:37 回答
【5850】Re:テキストファイルの読み出し 03/6/3(火) 14:32 お礼
【5803】読み出し→読み込み? こう 03/5/31(土) 20:33 回答
【5808】Re:読み出し→読み込み? 03/6/2(月) 9:29 質問
【5822】Re:読み出し→読み込み? Hirofumi 03/6/2(月) 19:53 回答

【5735】テキストファイルの読み出し
質問    - 03/5/29(木) 9:50 -

引用なし
パスワード
   はじめまして、VBA初心者です。

「テキストファイルを用意し、適当なデータを3行分作って保存する。ボタンを押すと、テキストファイルを読み出し、セル1〜セル3に3行分のデータを表示する。」

こういった作業をしたいのですが、いろんなHPを探してもヒントになるようなサイトが見つけることができませんでした。

アドバイスをいただきますようよろしくお願い致します。

【5744】Re:テキストファイルの読み出し
回答  Jaka  - 03/5/29(木) 12:28 -

引用なし
パスワード
   こんにちは。

[#1910]見てみてね。

基本TBL行数 = 1000
 ↓
基本TBL行数 = 500
の方が良い様です。もう少し厳密に分けると200、100にした方が良い時もあるけど。

[#3496]見てみてね。

Sub GS400()は、後で解ったんだけど、不具合が出ますので、
Sub GS400E() または好きな名前に買えて下さい。

【5782】Re:テキストファイルの読み出し
質問    - 03/5/30(金) 14:43 -

引用なし
パスワード
   ご解答ありがとうございました。

以下のコードで実行してみたのですが、フォームの実行を選択しても
何の反応もありません。

どこのコードが間違っているのかもページを見ましたがわかりません。

コード---------------->>
Private Sub 問4_Click()
End Sub

   
Sub GS400E()
Dim File_OUT As String
  File_OUT = "(デスクトップにあるテキスト名を入力してます).txt"
  Open File_OUT For Output As #1
  For i = 100 To 110
    Print #1, Trim(Range("A" & i).Value)
  Next
  Close #1
  
End Sub
--------------------------------->>


[#1910]見てみてね。
>
>基本TBL行数 = 1000
> ↓
>基本TBL行数 = 500
>の方が良い様です。もう少し厳密に分けると200、100にした方が良い時もあるけど。

これは、どの個所に記述するものなのでしょうか。
該当ページを見ても理解できませんでした。

度々お手数をお掛けしますが、御教授よろしくお願い致します。

【5788】Re:テキストファイルの読み出し
回答  Jaka  - 03/5/30(金) 16:02 -

引用なし
パスワード
   う〜ん。

Private Sub 問4_Click()
Dim File_OUT As String
  File_OUT = "(デスクトップにあるテキスト名を入力してます).txt"
  Open File_OUT For Output As #1
  For i = 100 To 110
    Print #1, Trim(Range("A" & i).Value)
  Next
  Close #1
End Sub

か、

Private Sub 問4_Click()
  GS400E
End Sub

【5802】Re:テキストファイルの読み出し
質問    - 03/5/31(土) 19:29 -

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


>Private Sub 問4_Click()
>Dim File_OUT As String
>  File_OUT = "(デスクトップにあるテキスト名を入力してます).txt"
>  Open File_OUT For Output As #1
>  For i = 100 To 110
>    Print #1, Trim(Range("A" & i).Value)
>  Next
>  Close #1
>End Sub

このコードで実施しました。
でも、テキストファイルの内容はどこにも表示されません。
ですが、テキストファイルの中身がすべて消えているのです。
一体どこに消えたのでしょう・・・(謎)

基本的な事をお聞きいたしますが、
読み出されたテキストファイルの中身はExcelの同シート上に書き込みされるということでよろしかったでしょうか。
何度もお手数をお掛けしすいません。
宜しくお願い致します。

【5803】読み出し→読み込み?
回答  こう E-MAIL  - 03/5/31(土) 20:33 -

引用なし
パスワード
   ま さん,こんにちわ。

「読み出し」って??「読み込む」の解釈で良いですか?


>「テキストファイルを用意し、適当なデータを3行分作って保存する。
これもVBAで行いますか?

>ボタンを押すと、テキストファイルを読み出し、セル1〜セル3に3行分のデータを表示する。」
「読み出し」→「読み込み」ですか?
セル1,セル2とは?たとえば「セル1=A1,セル2=A2」とかですか?


ちなみに,すでに存在するテキストファイルを読み
A1セルから下方セルに表示するなら,

  ファイル名 = ThisWorkbook.Path & "\" & "テキストファイル.txt"
  Open ファイル名 For Input As #1
  i = 1
  Do Until EOF(1)
    Input #1, rdat
    Cells(i, 1) = rdat
    i = i + 1
  Loop
  Close #1

で可能です

【5808】Re:読み出し→読み込み?
質問    - 03/6/2(月) 9:29 -

引用なし
パスワード
   ▼こう さん:
>ま さん,こんにちわ。
>
>「読み出し」って??「読み込む」の解釈で良いですか?

はい、「読み込む」です。
すいません。

>>「テキストファイルを用意し、適当なデータを3行分作って保存する。
>これもVBAで行いますか?

これは、VBAでは行いません。
>
>>ボタンを押すと、テキストファイルを読み出し、セル1〜セル3に3行分のデータを表示する。」
>「読み出し」→「読み込み」ですか?
>セル1,セル2とは?たとえば「セル1=A1,セル2=A2」とかですか?

はい、「セル1=A1,セル2=A2」になります。

デスクトップに作成した、テキストファイルの中身を
Excelから読み込み、Excelのセル上に表示させるというものです。
質問の表現の誤りでご迷惑お掛け致しました。

>ちなみに,すでに存在するテキストファイルを読み
>A1セルから下方セルに表示するなら,
>
>  ファイル名 = ThisWorkbook.Path & "\" & "テキストファイル.txt"
>  Open ファイル名 For Input As #1
>  i = 1
>  Do Until EOF(1)
>    Input #1, rdat
>    Cells(i, 1) = rdat
>    i = i + 1
>  Loop
>  Close #1
>
>で可能です

こちらで実施すると、「オブジェクトが必要です」と言われてしまいました。
ちなみに、ファイル名=(テキストファイルの名前)を入れる
"テキストファイル.txt"=(テキストファイルの名前)を入れる

後のコードはそのままコピーしました。
VBAに関しては、ほんとに初めてなので質問等が分かりにくく
理解にも時間がかかってしまい、ご迷惑お掛けしております。

よろしくお願い致します。

【5810】Re:テキストファイルの読み出し
回答  Jaka  - 03/6/2(月) 11:31 -

引用なし
パスワード
   こんにちは。」

sub jojo()
  Dim ファイル名 as string
  ファイル名 = ThisWorkbook.Path & "\" & "テキストファイル.txt"
  Open ファイル名 For Input As #1
  i = 1
  Do Until EOF(1)
    Line Input #1, Cells(i, 1).value
    i = i + 1
  Loop
  Close #1
end sub

これを書いたエクセルファイルとテキストファイル.txtが同じ階層フォルダ等の場所においてください。
これでダメだったら、テキストファイルの作り方がおかしんじゃないかと...。
特にテキストの改行辺り。

【5811】Re:テキストファイルの読み出し
回答  Jaka  - 03/6/2(月) 11:37 -

引用なし
パスワード
   すみません。下のように直接セルに書き込めませんでした。
>    Line Input #1, Cells(i, 1).value

訂正
  Do Until EOF(1)
    Line Input #1, rdat
    Cells(i, 1).Value = rdat
    i = i + 1
  Loop

【5822】Re:読み出し→読み込み?
回答  Hirofumi E-MAIL  - 03/6/2(月) 19:53 -

引用なし
パスワード
   丁度、[#5800]でテキストファイルの読み込みの回答をしています
全て文字列として読み込むので善ければ、其方のコードでも、可能です
ただし、

  'CSVファイル名を設定する
  strFileName = ActiveWorkbook.Path + "\" + "BodyPrice.csv"

の部分を自分のファイル名(フルパスで)にして下さい

【5850】Re:テキストファイルの読み出し
お礼    - 03/6/3(火) 14:32 -

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

解決致しました!!
ほんとうにありがとうございました。
書き込みしていただいた皆さんありがとうございました。

また、機会がありましたら
ぜひよろしくお願い致します。

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