按钮单击

时间:2018-01-29 22:18:30

标签: excel vba excel-vba

我有一个广播软件,可以读取.txt文件,并在更新.txt时在较低的第三个图形内显示内容(只需几个字)。

我希望通过以下方式在整个广播中显示不同的文本(如片段的标题):

  • 我会在Excel列中准备一个包含每个可能的低三分之一文本的列表。
  • 然后我选择一个单元格,单击一个按钮,Excel将仅使用所选单元格的内容保存/覆盖.txt - 这会触发广播软件显示该文本。
  • 然后我选择下一个单元格,单击按钮,Excel覆盖文件,广播软件显示该文本。

我如何在Excel / vba中执行此操作?

我不想在广播期间写下三分之一,因为我已经忙于托管流。任何帮助是极大的赞赏! :)

1 个答案:

答案 0 :(得分:1)

您可以创建对文件系统对象FSO的引用,然后使用CreateTextFile方法。 True语句将覆盖现有文件。

  

您需要将我提供的文件路径更改为有用的内容。为了说明的目的,我用那条假路径。

另外,如果您不希望msgbox提示询问您是否确定要广播,只需删除这两行。

试试这个:

Sub writeTxt()

    Const txtFilePath$ = "C:\Folders\txtFile.txt"

    Dim rng As Range, FSO As Object
    Set rng = ActiveCell

    If MsgBox("You sure you want to broadcast:" & vbNewLine & _
            rng.Text, vbOKCancel) = vbCancel Then Exit Sub

    Set FSO = CreateObject("Scripting.FileSystemObject")

    With FSO.CreateTextFile(txtFilePath, True)
        .WriteLine rng.Text
        .Close
    End With

End Sub