Страницы: 1
RSS
Экспорт rtf в Excel
 
Здравствуйте.
Подскажите, пожалуйста, макрос для переноса файла в формате rtf в Excel .

Вот в этом топике http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=8&TID=18960
я взяла макрос

мой компьютер ругается "run time error..." вроде бы на вот эту строку макроса (подсвечивает желтым).
Value = Application.Transpose(Arr)
Как поправить правильно эту строку я не знаю, поискала ещё в интернете.

Нашла вот такой макрос

Скрытый текст

Пробовала его запустить, безрезультатно.

Ещё один вопрос, макрос для rtf подойдет для txt ?
Спасибо заранее.
 
Здравствуйте, Галина.

1) Я не нашел в вашем макросе строку Value = Application.Transpose(Arr)
А ругается, скорее всего, потому, что массив Arr - пустой.
(видимо, данные не загрузились)

2) Макрос для txt, конечно, можно приспособить,
но зачем мучить Word обработкой текстовых файлов,
когда данные из файла TXT намного проще и быстрее загрузить напрямую, не запуская Word.

Вот несколько примеров макросов для чтения текстовых файлов из Excel:
http://excelvba.ru/code/txt
http://excelvba.ru/code/CSV2Excel
http://excelvba.ru/code/TextFile2Array
http://excelvba.ru/programmes/TemperaturesFromTextFile
http://excelvba.ru/programmes/Notepad
 
Добрый день.
Игорь, спасибо за ответ.
Вечером попробую Ваши коды.

Честно говоря, я в VBA ничего не понимаю, с необходимостью применить макросы столкнулась буквально в прошлом месяце, подыскиваю себе понятную литературу, немного читала Гарнаева.

Насчет моих вопросов.
Вопрос №2 я немного некорректно сформулировала, имелось в виду, подойдет ли макрос, импортирующий из rtf в Excel для такой же цели для файла в формате txt (импорта txt в Excel)

Вопрос №1
Вот такой макрос я пыталась запустить, автор KuklP
' ZVI:2009-09-02 http://www.planetaexcel.ru/forum.php?thread_id=9631

Скрытый текст
 
Цитата
Galina_27 пишет:
автор KuklP
Вот те раз! C чего Вы взяли? Я в той теме даже не участвовал :D Автор Владимир Захаров, ZVI.
Я сам - дурнее всякого примера! ...
 
Галина, можете приложить пример файла, содержимое которого нужно скопировать в Excel?
 
Добрый Вечер! У меня аналогичная проблема. Игорь,у меня не срабатывает Ваша функция по ссылке TextFile2Array

т.е. массив arr - остаётся пустым. Т.е. не проходит разделение файла по столбцам
Изменено: SvetaS_love - 26.09.2015 21:46:47
одинокий странник
 
может быть кто-то сможет подсказать как перевести функцию
Код
Private Sub
Button1_Click(ByVal
sender As System.Object, ByVal
e As System.EventArgs)
Handles Button1.Click

        Dim Mass()

        Dim STR As String

        Mass = IO.File.ReadAllLines("D:\1.csv")

        STR = Split(Mass(2), ",")(3)

        MsgBox(STR)

    End Sub
на VBA Excel
меня интересует именно строка  
Код
  Mass = IO.File.ReadAllLines("D:\1.csv")
Изменено: SvetaS_love - 26.09.2015 21:49:42
одинокий странник
 
т.е.   я  пишу
Код
Dim nn As Long
Dim la() As String
Dim lr() As String
Dim n As String
nn = 1
    Const ForReading = 1, ForWriting = 2, ForAppending = 3
    Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
    Dim fs, f, ts, s
    Set fs = CreateObject("Scripting.FileSystemObject")
           
   Set f = fs.GetFile("D:\file.csv")
     
   Set ts = f.OpenAsTextStream(ForReading, TristateUseDefault)
но как вставить строку
Код
Mass = IO.File.ReadAllLines("D:\1.csv")
одинокий странник
 
Задача описана в теме "RunTime Error 7 - Out of Memory"
одинокий странник
 
запись в файл происходит тут  (всё работает) , но как прочитать по столбцам в массив? Почему не срабатывает функция TextFile2Array c выгрузкой уже записанного ранее файла?
Код
Function txt_write_from_Mas(m As Variant, n%)
Dim i#, ii#, s$
    For i = 1 To UBound(m)
    s = m(i, 1)
        For ii = 2 To UBound(m, 2)
            s = s & vbTab & m(i, ii)
        Next
        Print #n, s '    Write #n, sf
    Next
одинокий странник
 
Ваш файл открываете в Excel, а потом выделяете столбец А с данными и применяете текст по столбцам, разделитель - знак табуляции
 
Kuzmich, а на языке VBA ?
одинокий странник
 
 в файле 300 000 строк. Нужно быстро на VBA...
одинокий странник
 
Так дольше писать код VBA, чем выделить 300 000 строк и разделить по столбцам.
Вот ваш файл c разделенными данными в формате .xls
 
Цитата
Нужно быстро на VBA...
Посмотрите метод объекта Range TextToColumns
 
Kuzmich, там задача расписана в теме "Задача описана в теме "RunTime Error 7 - Out of Memory"", а в ручную я и так каждую неделю делаю...нужен кусок кода, чтобы вставить его в другой кусок кода..... и .т.д.
одинокий странник
 
Kuzmich, ты вообще представляешь , что при считывании с каждой строки листа при объёме в 300 000 строк Excel  просто повиснит? Зачем ты мне файл прислал без макроса? у меня его считывать некуда....
одинокий странник
 
Цитата
у меня его считывать некуда..
Как же вы узнали, что там нет макроса?
 
Цитата
Kuzmich написал:
Как же вы узнали, что там нет макроса?
OFF:На Привозе сказали
Страницы: 1
Читают тему
Наверх