Excel VBA質問箱 IV

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

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


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

【12104】テキストファイルから指定シートへ読み込みする方法は? さる 04/3/24(水) 1:14 質問
【12105】Re:テキストファイルから指定シートへ読み... 通りすがりの者 04/3/24(水) 3:02 発言
【12111】Re:テキストファイルから指定シートへ読... IROC 04/3/24(水) 9:23 回答
【12132】Re:テキストファイルから指定シートへ読み... さる 04/3/24(水) 17:57 発言
【12378】Re:テキストファイルから指定シートへ読み... さる 04/4/1(木) 20:48 お礼
【12381】Re:テキストファイルから指定シートへ読み... さる 04/4/1(木) 21:54 質問
【12382】Re:テキストファイルから指定シートへ読み... さる 04/4/1(木) 21:59 お礼
【12383】Re:テキストファイルから指定シートへ読み... さる 04/4/1(木) 22:03 お礼

【12104】テキストファイルから指定シートへ読み込...
質問  さる E-MAIL  - 04/3/24(水) 1:14 -

引用なし
パスワード
   今、テキストファイルの扱い方を勉強していますが、煮詰まってしまいました。
とても難しいです。

1.「123」という文字が書かれたテキストファイルはユーザーフォームを
利用してコード番号001-01-2004-03-24に入力します。
001-01-2004-03-24.txtをデスクトップに作成する。
できればフォルダを付けてからテキストファイルを保存します。

2.別のBookを開いて、ユーザーフォームを開いて001-01-2004-03-24の
リストボックスを表示、選択し、001-01-2004-03-24.txtファイルを
読み込んで、指定のシートを「123」を取り込んで計算し、結果を出る
ようにしたい。


この二つのマクロを教えてもらえないでしょうか?
テキストファイルの扱い方の教材にしたいので。
よろしくお願い致します。

VBAコードも教えてください。お願いします。

【12105】Re:テキストファイルから指定シートへ読...
発言  通りすがりの者  - 04/3/24(水) 3:02 -

引用なし
パスワード
   ▼さる さん:

>1.「123」という文字が書かれたテキストファイルはユーザーフォームを
>利用してコード番号001-01-2004-03-24に入力します。
>001-01-2004-03-24.txtをデスクトップに作成する。
>できればフォルダを付けてからテキストファイルを保存します。

「123」という文字が書かれたテキストファイルは開けばいいんですか?
ユーザーフォームへの入力は人間の作業と言うことですか?
ユーザーフォームにはコード番号を入力するテキストボックスがあるということですか?
イマイチ質問の内容が私には理解できません。

>
>2.別のBookを開いて、ユーザーフォームを開いて001-01-2004-03-24の
>リストボックスを表示、選択し、001-01-2004-03-24.txtファイルを
>読み込んで、指定のシートを「123」を取り込んで計算し、結果を出る
>ようにしたい。

こちらも質問の主旨が分かりかねます。

ある程度、ご自身でマクロの記録をされてみては?

その上で分からないことを具体的にコードを掲載するとかして質問をされてはいかがでしょうか?

【12111】Re:テキストファイルから指定シートへ読...
回答  IROC  - 04/3/24(水) 9:23 -

引用なし
パスワード
   テキストファイルへ直接データを出力するときは、
Print # ステートメントなどを使うとできます。

ヘルプより

ファイルへのデータの書き込み
 

大量のデータを処理する場合、ファイルにデータを書き込んだり、ファイルからデータを読み込むと便利です。Open ステートメントを使用すると、ファイルを直接作成したり、操作できます。Open ステートメントは、3 種類のファイル操作を提供します。

シーケンシャル アクセス (Input モード、Output モード、および Append モード) は、エラー ログやレポートなどをテキスト ファイルに書き込むときに使用します。


ランダム アクセス (Random モード) は、ファイルを開いたままデータを読み書きするときに使用します。ランダム アクセス ファイルでは、データをレコードの形で扱います。したがって、情報へのアクセスが迅速に、しかも簡単に行えます。


バイナリ アクセス (Binary モード) は、ビットマップ イメージの保存や表示など、ファイル内の任意のバイト位置に読み書き行うときに使用します。
メモ Open ステートメントは、アプリケーション独自のファイル形式を開く場合には使用できません。たとえば、Word 文書、Microsoft Excel スプレッドシート,、または Microsoft Access データベースを開くときに、Open ステートメントを使用してはいけません。Open ステートメントを使用すると、ファイルの整合性が失われたり、破損の原因となります。

次の表は、ファイルにデータを読み書きするときに使用される主なステートメントを示します。

アクセスの種類 データの書き込み データの読み取り
シーケンシャル Print #, Write # Input #
ランダム Put Get
バイナリ Put Get

【12132】Re:テキストファイルから指定シートへ読...
発言  さる E-MAIL  - 04/3/24(水) 17:57 -

引用なし
パスワード
   ▼通りすがりの者 さん:
>▼さる さん:
>ごめんなさい。説明不足ですみませんでした。
>>1.「123」という文字が書かれたテキストファイルはユーザーフォームを
>>利用してコード番号001-01-2004-03-24に入力します。
>>001-01-2004-03-24.txtをデスクトップに作成する。
>>できればフォルダを付けてからテキストファイルを保存します。
>
>「123」という文字が書かれたテキストファイルは開けばいいんですか?
はいそうです。
>ユーザーフォームへの入力は人間の作業と言うことですか?
はいそうです。人間の作業で入力してこのコード番号を
一致してテキストファイルから読込します。
>ユーザーフォームにはコード番号を入力するテキストボックスがあるということですか?
はいテキストボックスがあります。入力してボタンを押して読込します。

>イマイチ質問の内容が私には理解できません。
>
>>
>>2.別のBookを開いて、ユーザーフォームを開いて001-01-2004-03-24の
>>リストボックスを表示、選択し、001-01-2004-03-24.txtファイルを
>>読み込んで、指定のシートを「123」を取り込んで計算し、結果を出る
>>ようにしたい。
>
>こちらも質問の主旨が分かりかねます。
>
>ある程度、ご自身でマクロの記録をされてみては?
>
>その上で分からないことを具体的にコードを掲載するとかして質問をされてはいかがでしょうか?

【12378】Re:テキストファイルから指定シートへ読...
お礼  さる E-MAIL  - 04/4/1(木) 20:48 -

引用なし
パスワード
   >▼通りすがりの者 さん:
いつもお世話になり、ありがとうございます。
>>ごめんなさい。説明不足ですみませんでした。
>>>1.「123」という文字が書かれたテキストファイルはユーザーフォームを
>>>利用してコード番号001-01-2004-03-24に入力します。
>>>001-01-2004-03-24.txtをデスクトップに作成する。
>>>できればフォルダを付けてからテキストファイルを保存します。
>>
>>「123」という文字が書かれたテキストファイルは開けばいいんですか?
>はいそうです。
>>ユーザーフォームへの入力は人間の作業と言うことですか?
>はいそうです。人間の作業で入力してこのコード番号を
>一致してテキストファイルから読込します。
>>ユーザーフォームにはコード番号を入力するテキストボックスがあるということですか?
>はいテキストボックスがあります。入力してボタンを押して読込します。
>
>>イマイチ質問の内容が私には理解できません。
>>
>>>
>>>2.別のBookを開いて、ユーザーフォームを開いて001-01-2004-03-24の
>>>リストボックスを表示、選択し、001-01-2004-03-24.txtファイルを
>>>読み込んで、指定のシートを「123」を取り込んで計算し、結果を出る
>>>ようにしたい。
>>
>>こちらも質問の主旨が分かりかねます。
>>
>>ある程度、ご自身でマクロの記録をされてみては?
>>
>>その上で分からないことを具体的にコードを掲載するとかして質問をされてはいかがでしょうか?

マクロで修正したがエラーを出すけど、
コード間違いでしょうか? ご指南おねがいします。

Private Sub CommandButton1_Click() '入力完了ボタン
  'Changeイベントがおきないように。
  Application.EnableEvents = False
  
  Dim myFile As String
  Dim fNo As Integer
  Dim lRow As Integer, i As Integer
  Dim ws As Worksheet, Rpos As Long
  Set ws = Worksheets("顧客データ")
  ws.Visible = True
  ws.Activate
  'A列(番号)の最終行をチェックし、そこに通し番号を入力します。
  Rpos = ws.Range("A65536").End(xlUp).Row + 1
  'B列(氏名)にテキストボックスの会社名を入力します。
  With ws
    If Rpos = 3 Then
      .Cells(Rpos, 1).Value = 1
    Else
      .Cells(Rpos, 1).Value = .Cells(Rpos - 1, 1).Value + 1
    End If
    '
    .Cells(Rpos, 2).Value = TextBox1.Text '会社名
    .Cells(Rpos, 3).Value = TextBox2.Text '本部名コード
    .Cells(Rpos, 4).Value = TextBox3.Text '支部名コード
    .Cells(Rpos, 5).Value = TextBox5.Text '実施日(年度)
    .Cells(Rpos, 6).Value = TextBox6.Text '月
    .Cells(Rpos, 7).Value = TextBox7.Text '日
  End With
  '本部コード(001〜999)− 支部コード(01〜99)- 年度 - 月 −日.csvをインプットし、保存します。


  myFile = "C:\Documents" & TextBox2.Text & "-" & TextBox3.Text & "-" & TextBox5.Text _
     & "-" & TextBox6 & "-" & TextBox7 & ".csv"
  Worksheets("Work").Activate
  lRow = Range("A1").CurrentRegion.Rows

  fNo = FreeFile
  Open myFile For Output As #fNo

  For i = 1 To lRow
  Write #fNo, Cells(i, 1), Cells(i, 2), Cells(i, 3) _
  ; Cells(i, 4), Cells(i, 5), Cells(i, 6) _
  ; Cells(i, 7), Cells(i, 8), Cells(i, 9), Cells(i, 10) _
  ; Cells(i, 11), Cells(i, 12), Cells(i, 13), Cells(i, 14), sells(i, 15) _
  ; Cells(i, 16), Cells(i, 17), Cells(i, 18), Cells(i, 19), sells(i, 20) _
  ; Cells(i, 21), Cells(i, 22), Cells(i, 23), Cells(i, 24), sells(i, 25) _
  ; Cells(i, 26), Cells(i, 27), Cells(i, 28), Cells(i, 29), sells(i, 30) _
  ; Cells(i, 31), Cells(i, 32), Cells(i, 33), Cells(i, 34), sells(i, 35) _
  ; Cells(i, 36), Cells(i, 37), Cells(i, 38), Cells(i, 39), sells(i, 40) _
  ; Cells(i, 41), Cells(i, 42), Cells(i, 43), Cells(i, 44), sells(i, 45) _
  ; Cells(i, 46), Cells(i, 47), Cells(i, 48), Cells(i, 49), sells(i, 50) _
  ; Cells(i, 51), Cells(i, 52), Cells(i, 53), Cells(i, 54), sells(i, 55) _
  ; Cells(i, 56), Cells(i, 57), Cells(i, 58), Cells(i, 59), sells(i, 60) _
  ; Cells(i, 61), Cells(i, 62), Cells(i, 63), Cells(i, 64), sells(i, 65) _
  ; Cells(i, 66),
  Next
  

  Close #fNo
End Sub

  'TextBox_Clear
  Dim obj As Control
  For Each obj In Me.Controls
    If TypeName(obj) = "TextBox" Then
      obj.Text = ""
    End If
  Next
  '
  Me.OptionButton1.Value = True
  '行の複製
  RowCopy Rpos
  '
  TextBox1.SetFocus
  Application.EnableEvents = True
End Sub

【12381】Re:テキストファイルから指定シートへ読...
質問  さる E-MAIL  - 04/4/1(木) 21:54 -

引用なし
パスワード
   ▼さる さん:
>>▼通りすがりの者 さん:
>いつもお世話になり、ありがとうございます。
>>>ごめんなさい。説明不足ですみませんでした。
>>>>1.「123」という文字が書かれたテキストファイルはユーザーフォームを
>>>>利用してコード番号001-01-2004-03-24に入力します。
>>>>001-01-2004-03-24.txtをデスクトップに作成する。
>>>>できればフォルダを付けてからテキストファイルを保存します。
>>>
>>>「123」という文字が書かれたテキストファイルは開けばいいんですか?
>>はいそうです。
>>>ユーザーフォームへの入力は人間の作業と言うことですか?
>>はいそうです。人間の作業で入力してこのコード番号を
>>一致してテキストファイルから読込します。
>>>ユーザーフォームにはコード番号を入力するテキストボックスがあるということですか?
>>はいテキストボックスがあります。入力してボタンを押して読込します。
>>
>>>イマイチ質問の内容が私には理解できません。
>>>
>>>>
>>>>2.別のBookを開いて、ユーザーフォームを開いて001-01-2004-03-24の
>>>>リストボックスを表示、選択し、001-01-2004-03-24.txtファイルを
>>>>読み込んで、指定のシートを「123」を取り込んで計算し、結果を出る
>>>>ようにしたい。
>>>
>>>こちらも質問の主旨が分かりかねます。
>>>
>>>ある程度、ご自身でマクロの記録をされてみては?
>>>
>>>その上で分からないことを具体的にコードを掲載するとかして質問をされてはいかがでしょうか?
>
>マクロで修正したがエラーを出すけど、
>コード間違いでしょうか? ご指南おねがいします。
>
>Private Sub CommandButton1_Click() '入力完了ボタン
>  'Changeイベントがおきないように。
>  Application.EnableEvents = False
>  
>  Dim myFile As String
>  Dim fNo As Integer
>  Dim lRow As Integer, i As Integer
>  Dim ws As Worksheet, Rpos As Long
>  Set ws = Worksheets("顧客データ")
>  ws.Visible = True
>  ws.Activate
>  'A列(番号)の最終行をチェックし、そこに通し番号を入力します。
>  Rpos = ws.Range("A65536").End(xlUp).Row + 1
>  'B列(氏名)にテキストボックスの会社名を入力します。
>  With ws
>    If Rpos = 3 Then
>      .Cells(Rpos, 1).Value = 1
>    Else
>      .Cells(Rpos, 1).Value = .Cells(Rpos - 1, 1).Value + 1
>    End If
>    '
>    .Cells(Rpos, 2).Value = TextBox1.Text '会社名
>    .Cells(Rpos, 3).Value = TextBox2.Text '本部名コード
>    .Cells(Rpos, 4).Value = TextBox3.Text '支部名コード
>    .Cells(Rpos, 5).Value = TextBox5.Text '実施日(年度)
>    .Cells(Rpos, 6).Value = TextBox6.Text '月
>    .Cells(Rpos, 7).Value = TextBox7.Text '日
>  End With
>  '本部コード(001〜999)− 支部コード(01〜99)- 年度 - 月 −日.csvをインプットし、保存します。
>
>
>  myFile = "C:\Documents" & TextBox2.Text & "-" & TextBox3.Text & "-" & TextBox5.Text _
>     & "-" & TextBox6 & "-" & TextBox7 & ".csv"
>  Worksheets("Work").Activate
>  lRow = Range("A1").CurrentRegion.Rows
>
>  fNo = FreeFile
>  Open myFile For Output As #fNo
>
>  For i = 1 To lRow
>  Write #fNo, Cells(i, 1), Cells(i, 2), Cells(i, 3) _
>  ; Cells(i, 4), Cells(i, 5), Cells(i, 6) _
>  ; Cells(i, 7), Cells(i, 8), Cells(i, 9), Cells(i, 10) _
>  ; Cells(i, 11), Cells(i, 12), Cells(i, 13), Cells(i, 14), sells(i, 15) _
>  ; Cells(i, 16), Cells(i, 17), Cells(i, 18), Cells(i, 19), sells(i, 20) _
>  ; Cells(i, 21), Cells(i, 22), Cells(i, 23), Cells(i, 24), sells(i, 25) _
>  ; Cells(i, 26), Cells(i, 27), Cells(i, 28), Cells(i, 29), sells(i, 30) _
>  ; Cells(i, 31), Cells(i, 32), Cells(i, 33), Cells(i, 34), sells(i, 35) _
>  ; Cells(i, 36), Cells(i, 37), Cells(i, 38), Cells(i, 39), sells(i, 40) _
>  ; Cells(i, 41), Cells(i, 42), Cells(i, 43), Cells(i, 44), sells(i, 45) _
>  ; Cells(i, 46), Cells(i, 47), Cells(i, 48), Cells(i, 49), sells(i, 50) _
>  ; Cells(i, 51), Cells(i, 52), Cells(i, 53), Cells(i, 54), sells(i, 55) _
>  ; Cells(i, 56), Cells(i, 57), Cells(i, 58), Cells(i, 59), sells(i, 60) _
>  ; Cells(i, 61), Cells(i, 62), Cells(i, 63), Cells(i, 64), sells(i, 65) _
>  ; Cells(i, 66),
>  Next
>  
>
>  Close #fNo
>End Sub
>
>  'TextBox_Clear
>  Dim obj As Control
>  For Each obj In Me.Controls
>    If TypeName(obj) = "TextBox" Then
>      obj.Text = ""
>    End If
>  Next
>  '
>  Me.OptionButton1.Value = True
>  '行の複製
>  RowCopy Rpos
>  '
>  TextBox1.SetFocus
>  Application.EnableEvents = True
>End Sub

【12382】Re:テキストファイルから指定シートへ読...
お礼  さる E-MAIL  - 04/4/1(木) 21:59 -

引用なし
パスワード
   >>▼通りすがりの者 さん:
>いつもお世話になり、ありがとうございます。
>>>ごめんなさい。説明不足ですみませんでした。
>>>>1.「123」という文字が書かれたテキストファイルはユーザーフォームを
>>>>利用してコード番号001-01-2004-03-24に入力します。
>>>>001-01-2004-03-24.txtをデスクトップに作成する。
>>>>できればフォルダを付けてからテキストファイルを保存します。
>>>
>>>「123」という文字が書かれたテキストファイルは開けばいいんですか?
>>はいそうです。
>>>ユーザーフォームへの入力は人間の作業と言うことですか?
>>はいそうです。人間の作業で入力してこのコード番号を
>>一致してテキストファイルから読込します。
>>>ユーザーフォームにはコード番号を入力するテキストボックスがあるということですか?
>>はいテキストボックスがあります。入力してボタンを押して読込します。
>>
>>>イマイチ質問の内容が私には理解できません。
>>>
>>>>
>>>>2.別のBookを開いて、ユーザーフォームを開いて001-01-2004-03-24の
>>>>リストボックスを表示、選択し、001-01-2004-03-24.txtファイルを
>>>>読み込んで、指定のシートを「123」を取り込んで計算し、結果を出る
>>>>ようにしたい。
>>>
>>>こちらも質問の主旨が分かりかねます。
>>>
>>>ある程度、ご自身でマクロの記録をされてみては?
>>>
>>>その上で分からないことを具体的にコードを掲載するとかして質問をされてはいかがでしょうか?
>
>マクロで修正したがエラーを出すけど、
>コード間違いでしょうか? ご指南おねがいします。
>
>Private Sub CommandButton1_Click() '入力完了ボタン
>  'Changeイベントがおきないように。
>  Application.EnableEvents = False
>  
>  Dim myFile As String
>  Dim fNo As Integer
>  Dim lRow As Integer, i As Integer
>  Dim ws As Worksheet, Rpos As Long
>  Set ws = Worksheets("顧客データ")
>  ws.Visible = True
>  ws.Activate
>  'A列(番号)の最終行をチェックし、そこに通し番号を入力します。
>  Rpos = ws.Range("A65536").End(xlUp).Row + 1
>  'B列(氏名)にテキストボックスの会社名を入力します。
>  With ws
>    If Rpos = 3 Then
>      .Cells(Rpos, 1).Value = 1
>    Else
>      .Cells(Rpos, 1).Value = .Cells(Rpos - 1, 1).Value + 1
>    End If
>    '
>    .Cells(Rpos, 2).Value = TextBox1.Text '会社名
>    .Cells(Rpos, 3).Value = TextBox2.Text '本部名コード
>    .Cells(Rpos, 4).Value = TextBox3.Text '支部名コード
>    .Cells(Rpos, 5).Value = TextBox5.Text '実施日(年度)
>    .Cells(Rpos, 6).Value = TextBox6.Text '月
>    .Cells(Rpos, 7).Value = TextBox7.Text '日
>  End With
>  '本部コード(001〜999)− 支部コード(01〜99)- 年度 - 月 −日.csvをインプットし、保存します。
>
>
>  myFile = "C:\Documents" & TextBox2.Text & "-" & TextBox3.Text & "-" & TextBox5.Text _
>     & "-" & TextBox6 & "-" & TextBox7 & ".csv"
>  Worksheets("Work").Activate
>  lRow = Range("A1").CurrentRegion.Rows
>
>  fNo = FreeFile
>  Open myFile For Output As #fNo
>
>  For i = 1 To lRow
>  Write #fNo, Cells(i, 1), Cells(i, 2), Cells(i, 3) _
>  ; Cells(i, 4), Cells(i, 5), Cells(i, 6) _
>  ; Cells(i, 7), Cells(i, 8), Cells(i, 9), Cells(i, 10) _
>  ; Cells(i, 11), Cells(i, 12), Cells(i, 13), Cells(i, 14), sells(i, 15) _
>  ; Cells(i, 16), Cells(i, 17), Cells(i, 18), Cells(i, 19), sells(i, 20) _
>  ; Cells(i, 21), Cells(i, 22), Cells(i, 23), Cells(i, 24), sells(i, 25) _
>  ; Cells(i, 26), Cells(i, 27), Cells(i, 28), Cells(i, 29), sells(i, 30) _
>  ; Cells(i, 31), Cells(i, 32), Cells(i, 33), Cells(i, 34), sells(i, 35) _
>  ; Cells(i, 36), Cells(i, 37), Cells(i, 38), Cells(i, 39), sells(i, 40) _
>  ; Cells(i, 41), Cells(i, 42), Cells(i, 43), Cells(i, 44), sells(i, 45) _
>  ; Cells(i, 46), Cells(i, 47), Cells(i, 48), Cells(i, 49), sells(i, 50) _
>  ; Cells(i, 51), Cells(i, 52), Cells(i, 53), Cells(i, 54), sells(i, 55) _
>  ; Cells(i, 56), Cells(i, 57), Cells(i, 58), Cells(i, 59), sells(i, 60) _
>  ; Cells(i, 61), Cells(i, 62), Cells(i, 63), Cells(i, 64), sells(i, 65) _
>  ; Cells(i, 66),
>  Next
>  
>
>  Close #fNo
>End Sub
>
>  'TextBox_Clear
>  Dim obj As Control
>  For Each obj In Me.Controls
>    If TypeName(obj) = "TextBox" Then
>      obj.Text = ""
>    End If
>  Next
>  '
>  Me.OptionButton1.Value = True
>  '行の複製
>  RowCopy Rpos
>  '
>  TextBox1.SetFocus
>  Application.EnableEvents = True
>End Sub

【12383】Re:テキストファイルから指定シートへ読...
お礼  さる E-MAIL  - 04/4/1(木) 22:03 -

引用なし
パスワード
   >>▼通りすがりの者 さん:
>いつもお世話になり、ありがとうございます。
>>>ごめんなさい。説明不足ですみませんでした。
>>>>1.「123」という文字が書かれたテキストファイルはユーザーフォームを
>>>>利用してコード番号001-01-2004-03-24に入力します。
>>>>001-01-2004-03-24.txtをデスクトップに作成する。
>>>>できればフォルダを付けてからテキストファイルを保存します。
>>>
>>>「123」という文字が書かれたテキストファイルは開けばいいんですか?
>>はいそうです。
>>>ユーザーフォームへの入力は人間の作業と言うことですか?
>>はいそうです。人間の作業で入力してこのコード番号を
>>一致してテキストファイルから読込します。
>>>ユーザーフォームにはコード番号を入力するテキストボックスがあるということですか?
>>はいテキストボックスがあります。入力してボタンを押して読込します。
>>
>>>イマイチ質問の内容が私には理解できません。
>>>
>>>>
>>>>2.別のBookを開いて、ユーザーフォームを開いて001-01-2004-03-24の
>>>>リストボックスを表示、選択し、001-01-2004-03-24.txtファイルを
>>>>読み込んで、指定のシートを「123」を取り込んで計算し、結果を出る
>>>>ようにしたい。
>>>
>>>こちらも質問の主旨が分かりかねます。
>>>
>>>ある程度、ご自身でマクロの記録をされてみては?
>>>
>>>その上で分からないことを具体的にコードを掲載するとかして質問をされてはいかがでしょうか?
>
>マクロで修正したがエラーを出すけど、
>コード間違いでしょうか? ご指南おねがいします。
>
>Private Sub CommandButton1_Click() '入力完了ボタン
>  'Changeイベントがおきないように。
>  Application.EnableEvents = False
>  
>  Dim myFile As String
>  Dim fNo As Integer
>  Dim lRow As Integer, i As Integer
>  Dim ws As Worksheet, Rpos As Long
>  Set ws = Worksheets("顧客データ")
>  ws.Visible = True
>  ws.Activate
>  'A列(番号)の最終行をチェックし、そこに通し番号を入力します。
>  Rpos = ws.Range("A65536").End(xlUp).Row + 1
>  'B列(氏名)にテキストボックスの会社名を入力します。
>  With ws
>    If Rpos = 3 Then
>      .Cells(Rpos, 1).Value = 1
>    Else
>      .Cells(Rpos, 1).Value = .Cells(Rpos - 1, 1).Value + 1
>    End If
>    '
>    .Cells(Rpos, 2).Value = TextBox1.Text '会社名
>    .Cells(Rpos, 3).Value = TextBox2.Text '本部名コード
>    .Cells(Rpos, 4).Value = TextBox3.Text '支部名コード
>    .Cells(Rpos, 5).Value = TextBox5.Text '実施日(年度)
>    .Cells(Rpos, 6).Value = TextBox6.Text '月
>    .Cells(Rpos, 7).Value = TextBox7.Text '日
>  End With
>'本部コード(001〜999)− 支部コード(01〜99)- 年度 - 月 −日.csvをインプットし、保存します。
>
>’Workシートにcvsファイルへ書き込みします。
>  myFile = "C:\Documents" & TextBox2.Text & "-" & TextBox3.Text & "-" & TextBox5.Text _
>     & "-" & TextBox6 & "-" & TextBox7 & ".csv"
> 
 Worksheets("Work").Activate
>  lRow = Range("A1").CurrentRegion.Rows
>
>  fNo = FreeFile
>  Open myFile For Output As #fNo
>
>  For i = 1 To lRow
>  Write #fNo, Cells(i, 1), Cells(i, 2), Cells(i, 3) _
>  ; Cells(i, 4), Cells(i, 5), Cells(i, 6) _
>  ; Cells(i, 7), Cells(i, 8), Cells(i, 9), Cells(i, 10) _
>  ; Cells(i, 11), Cells(i, 12), Cells(i, 13), Cells(i, 14), sells(i, 15) _
>  ; Cells(i, 16), Cells(i, 17), Cells(i, 18), Cells(i, 19), sells(i, 20) _
>  ; Cells(i, 21), Cells(i, 22), Cells(i, 23), Cells(i, 24), sells(i, 25) _
>  ; Cells(i, 26), Cells(i, 27), Cells(i, 28), Cells(i, 29), sells(i, 30) _
>  ; Cells(i, 31), Cells(i, 32), Cells(i, 33), Cells(i, 34), sells(i, 35) _
>  ; Cells(i, 36), Cells(i, 37), Cells(i, 38), Cells(i, 39), sells(i, 40) _
>  ; Cells(i, 41), Cells(i, 42), Cells(i, 43), Cells(i, 44), sells(i, 45) _
>  ; Cells(i, 46), Cells(i, 47), Cells(i, 48), Cells(i, 49), sells(i, 50) _
>  ; Cells(i, 51), Cells(i, 52), Cells(i, 53), Cells(i, 54), sells(i, 55) _
>  ; Cells(i, 56), Cells(i, 57), Cells(i, 58), Cells(i, 59), sells(i, 60) _
>  ; Cells(i, 61), Cells(i, 62), Cells(i, 63), Cells(i, 64), sells(i, 65) _
>  ; Cells(i, 66),
>  Next
>  
>
>  Close #fNo
>End Sub
>
>  'TextBox_Clear
>  Dim obj As Control
>  For Each obj In Me.Controls
>    If TypeName(obj) = "TextBox" Then
>      obj.Text = ""
>    End If
>  Next
>  '
>  Me.OptionButton1.Value = True
>  '行の複製
>  RowCopy Rpos
>  '
>  TextBox1.SetFocus
>  Application.EnableEvents = True
>End Sub

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