Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 选择范围并复制/粘贴到记事本-几乎完成_Vba_Excel - Fatal编程技术网

Vba 选择范围并复制/粘贴到记事本-几乎完成

Vba 选择范围并复制/粘贴到记事本-几乎完成,vba,excel,Vba,Excel,经过大量的工作和测试,我终于在工作表中选择了一个范围,然后将其复制/粘贴到记事本中。此后,该文件将由另一个应用程序读取。不幸的是,应用程序拒绝该文件,我无法调试原因。我得到的唯一信息是最后一行出现了一个错误 令人惊讶的是,当我用手将粘贴复制到记事本上时,它可以工作。就我的眼睛所见,两个txt文件——用我的sub写的和用手从CP写的完全一样。我想我的眼睛是错的。我怀疑在最后一行的末尾或最后一行的下面可能有一些我看不见的空白。在我看来,代码中唯一我不完全理解的部分是当前问题的所在地 查找我的代码的以

经过大量的工作和测试,我终于在工作表中选择了一个范围,然后将其复制/粘贴到记事本中。此后,该文件将由另一个应用程序读取。不幸的是,应用程序拒绝该文件,我无法调试原因。我得到的唯一信息是最后一行出现了一个错误

令人惊讶的是,当我用手将粘贴复制到记事本上时,它可以工作。就我的眼睛所见,两个txt文件——用我的sub写的和用手从CP写的完全一样。我想我的眼睛是错的。我怀疑在最后一行的末尾或最后一行的下面可能有一些我看不见的空白。在我看来,代码中唯一我不完全理解的部分是当前问题的所在地

查找我的代码的以下部分:

[code]
' RngSelect is a Variant and effectively a range of cells 
' Txt is a Variant
' LastRow is a Long equal to last row number of my range

With RngSelect
For Lg1 = 1 To LastRow
    Txt = Txt & vbCrLf & Join$(Application.Transpose(Application.Transpose(.Rows(Lg1).Value)),vbTab)   ' copy each row    
Next
End With

Open FilePath For Output As #1
Print #1, Mid$(Txt, Len(vbCrLf) + 1)
Close #1

RngSelect = Null
Txt = Null

End Sub
如果有帮助,我的文件将被其他应用程序导入,可以采用csv格式。目前,我的分隔符是Tab

谢谢您的帮助。

在这之后,我终于设法删除了文本底部的最后一行空白。现在正确的行是:Print 1,Mid$txt,LenvbCrLf+1

然后我不得不修改最后一行,因为它是电子表格上的行号,而不是文本文件上的最后一行。 现在我将找到一种在文本文件中追加文本的方法。

将RngSelect=Null更改为RngSelect=Nothing,并将Txt=Null更改为Txt=尽管在代码末尾,除非在该过程中未声明Txt,否则您不需要将其设置为任何值……您可能会发现用于将信息发送到记事本的函数非常有用。@SiddharthRout:是的,在此过程中未声明Txt。谢谢你的小费。