Здравствуйте! Подскажите, как вставить скопированный диапазон на Листе Exel и вставить его из буфера в шаблон текстового файла в "Блокнот" и сохранение с заполненного файла с новым именем "Новый.txt"
Код
Sub Bloknot1()
'
Dim ReturnValue
Sheets("Лист1").Select
Range("E7:E20").Select
Selection.Copy
'
ReturnValue = Shell("C:\Windows\system32\notepad.exe C:\Users\Papa\Desktop\Пустой.txt")
End Sub
Sub WriteTxt()
Dim txt$, a%, b%, arr(), fn$
arr = Selection.Value
fn = "C:\Users\Papa\Desktop\Пустой.txt"
Open fn For Output As #1
For a = 1 To UBound(arr, 1)
txt = ""
For b = 1 To UBound(arr, 2)
txt = txt & " " & arr(a, b)
Next
Print #1, txt
Next
Close #1
End Sub
Anchoret, радость оказалась не долгой.. Вставляю текст в отдельный модуль в своём проекте - не работает. Даёт ошибку << Run-time Error '6' Overflow >> и останавливается на строке
Код
For a = 1 To UBound(arr, 1)
Вставляемый диапазон с данными (столбец) более 40000 строк. Уменьшаю количество строк с данными - отрабатывает. К сожалению, не могу выложить файл - весит более 1,5 МБ. Как обойти ошибку?
Объявляйте a as long Да и если там 40000 строк - нужно бы доработать код в этой части получения диапазона. Это ведь гемор - выделять вручную именно только нужные 40000...