在打印中连接两个单元格值

时间:2014-11-14 14:39:47

标签: excel vba excel-vba

我正在创建一个文本文件,其中包含使用宏的SQL插入语句。

我现在苦苦挣扎的是,我需要将A和B的值连接到输出文件中的一行,而是将它们分成两行。

我无法将所有数据放入一个单元格中,因为它打印时超过255个字符并被切断。

我遇到的问题是 -

Set rng_Data = Range("Output!Output")

其中Output!是工作表,Output是指定的数据范围。

然后再往下 -

For Each cell In rng_Data
    'Print the data string to the txt file
    Print #int_FreeFile01, Format(cell.Value)
Next

理想情况下,我认为这应该写成 -

Set rng_Data = Range("Output!A1&B1:A116&B116")

但是我无法让它发挥作用。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

假设你的范围是A1:B116

Set rng_Data = Range(Sheets("Output").Cells(1, 1), Sheets("Output").Cells(116, 2))

Open "C:\myfile.txt" For Output As #1

For Each cell In rng_Data
    'Print new line if the cell is in column 1
    If cell.Column = 1 Then Print #1, ""
    'Print the cell value without new line ending
    Print #1, cell.Value;

Next

Close #1

答案 1 :(得分:0)

此代码假设您总是有116行:

Sub PrintToNote()

Dim CurRow As Long
Dim CelCon As String

For CurRow = 1 To 116
    CelCon = Sheets("Output").Cells(CurRow, 1).Value & Sheets("Output").Cells(CurRow, 2).Value
    Print #int_FreeFile01, CelCon
    Next CurRow

End Sub

只需要对打印命令进行一些工作......