プロが教えるわが家の防犯対策術!

マクロを実行して、作業ブックのシートやセル値をファイル名にしたり、テキストファイルの文章を構成出来るマクロを先日教えて頂きました。
テキストファイルの一番最初の相手先を
シート審査、セルB1を参照するようにしておりますが、
現状のマクロでは、セルB1では無く担当者のセル13が相手先になってしまっております。
解決方法をよろしくお願いいたします。
マクロ
Option Explicit

Public Sub テキストファイル作成()
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim fname As String
Dim result As Boolean
Dim err_str As String
Dim atesaki As String
Dim tanto As String
Dim text_path As String
Set ws1 = Worksheets("青紙表")
Set ws2 = Worksheets("審査")
fname = ws1.Range("CK1").Value
If fname = "" Then
MsgBox ("ファイル名が空白です")
Exit Sub
End If
result = CheckFileName(fname, err_str)
If result = False Then
MsgBox ("ファイル名として使用できない文字[" & err_str & "]があります")
Exit Sub
End If
atesaki = ws2.Range("B1").Value
If atesaki = "" Then
MsgBox ("宛先が空白です")
Exit Sub
End If
tanto = ws2.Range("G13").Value
If tanto = "" Then
MsgBox ("担当者が空白です")
Exit Sub
End If
text_path = ThisWorkbook.Path & "\" & fname & ".txt"
Open text_path For Output As #1
'宛先
Print #1, tanto
'固定文字
Dim fstr1 As String
Dim fstr2 As String
Dim fstr3 As String
fstr1 = "お世話になっております、回答書を確認いたしましたが、下記の内容を再度ご確認ください。"
fstr2 = "修正図書をWebにアップをお願いします。"
fstr3 = "以上です。 よろしくお願いします。"
Print #1, fstr1
Print #1, fstr2
Print #1, fstr3
'担当者
Dim vstr1 As String
vstr1 = "担当者:" & tanto
Print #1, vstr1
Close #1
End Sub
'ファイル名として使用できない文字が含まれているかチェックする
Public Function CheckFileName(ByVal fname As String, ByRef err_str As String) As Boolean
Dim estrs As Variant
Dim i As Long
Dim estars As Variant
CheckFileName = False
estars = Array("\", "/", ":", "*", "?", "<", ">", "|", """")
For i = 0 To UBound(estars)
If InStr(fname, estars(i)) > 0 Then
err_str = estars(i)
Exit Function
End If
Next
CheckFileName = True
End Function
以上です。
よろしくお願いします。

A 回答 (2件)

Open text_path For Output As #1


'宛先
Print #1, tanto



Open text_path For Output As #1
'宛先
Print #1, atesaki

動作チェックが完了してから閉じた方が宜しいかと。
    • good
    • 0
この回答へのお礼

ありがとうございます。
上手く出来ました。

お礼日時:2023/07/15 15:27

前回回答者です。


失礼しました。
No1のかたの指摘内容で間違いありません。
No1のかたの指摘通りに修正してください。
    • good
    • 0
この回答へのお礼

ありがとうございます。
一度、動作確認をしたのですが、
私の確認みすでした。
ありがとうございます。

お礼日時:2023/07/15 15:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!