VBA:将日期和一些文本写入txt文件

时间:2018-12-16 15:34:40

标签: excel vba excel-vba text

我正在为一个已经编写了几个月的VBA程序创建EULA,但是我遇到了麻烦。

基本上,用户单击一个复选框,使其值变为true,然后单击按钮/值变为true时,按钮控件将查看复选框的值是否为true。如果是这样,它将关闭EULA窗口,打开主窗口,然后应将日期和时间以及一些可能的文本写出同意的日期和时间写入文本文件。按钮和复选框的代码为

    Private Sub eula_agree_button_Click()
    If eula_agree_check_box.Value = True Then
    Unload eula
    main_window.show
    End If
    End Sub

这只是关闭EULA窗口并打开主窗口,因此,对于.txt文件的日期和时间代码,我构造了此代码:

    Private Sub eula_agree_button_Click()
    If eula_agree_check_box.Value = True Then
    Unload eula
    Open "C:\eulalog\eulalog.txt" & Format(Now(), "_yyyy-mm-dd_hh-mm") & ".lst" For Output As #1
    Close #1
    Pause 2
    main_window.Show
    Else
    MsgBox "You have not agreed to the EULA. Please read the EULA, then                         
    check the check box, then press the 'I agree' button.", , "EULA Notice"
    End If
    End Sub

但是;运行此命令时,出现以下错误:

  1. 代码遇到错误时将正常停止,并突出显示     关闭#1 代码行

  2. VBA说

  

“运行时错误'76':找不到路径

我相信这是因为尽管目标驱动器(C :)上确实存在该文件,但找不到名为'eulalog.txt'的文本文件

此外,如果您询问为什么文件路径是eulalog \ eulalog.txt,则第一个'eulalog'是文件夹,第二个'eulalog'是'eulalog.txt'是文本文件(.txt是文件扩展名)

1 个答案:

答案 0 :(得分:0)

代码是:

Private Sub eula_agree_button_Click()
If eula_agree_check_box.Value = True Then
Unload eula
Open "eulalog.txt" For Output As #1
Write #1, "I agree with the End User License Notice and I wish to continue and start         Sketchbox - has been valued as true by end-user"
Close #1
Pause 2
main_window.Show
Else
MsgBox "You have not agreed to the EULA. Please read the EULA, then check the check box, then press the 'I agree' button.", , "EULA Notice"
End If
End Sub

我们使用open语句打开文本文件,该文件及其扩展名为(.txt)且带有语音标记

    Open "test.txt" For Output As #1

然后我们写入通过键入打开的.txt文件

   Write #1

'#1'是我们所引用的 然后添加文字,就像这样

    Write #1, "Hello World"    

然后我们通过键入

关闭文本文件
    Close #1

我其余的代码用于应用程序,但是我刚刚列出的内容可以正常工作。

完整代码为:

    Open "test.txt" For Output As #1
    Write #1, "Hello World"    
    Close #1

您需要做的就是将文件名从“ test.txt”更改为您的.txt文件名,并将语音标记中的文本更改为您希望在文本文件中放置的内容:)

希望这对其他人有帮助:)