Добрый день!
Как и большинство людей мечтаю избаться от рутины в работе. Каждое утро начинается с нудной и мучитильной обработки банковских выписок в формате rtf и разнесении их в Excel. Давно думала о том, как можно автоматизировать этот процесс хотя бы частично. Полазав по сайту нашла следующий код, который полностью копирует содержимое выписки в Excel.
Sub OpenRtfAndPasteToSheets()
Dim wd As Object
Dim ns As Worksheet
On Error Resume Next
'запустим Ворд
Set wd = GetObject("", "Word.Application")
If Err.Number <> 0 Then
Err.Clear
Set wd = CreateObject("Word.Application")
If Err.Number <> 0 Then Exit Sub
End If
On Error GoTo BAD
Do
'получим имя очередного файла
f = Application.GetOpenFilename("Файлы RTF, *.rtf,Все файлы, *.*")
If TypeName(f) = "Boolean" Then Exit Do 'если Отмена - выход
'откроем выбранный очередной файл
Set wdd = wd.Documents.Open(f)
' wd.Visible = True
'скопируем содержимое документа
t = wdd.Content.Copy
'создадим лист для этого документа
Set ns = ActiveWorkbook.Worksheets.Add
'вставим скопированное в новый лист
ns.Paste Destination:=ns.Cells(1, 1)
'немного выравним вид
ns.Cells.WrapText = False
ns.Columns.AutoFit
ns.Rows.AutoFit
wdd.Close
Loop
wd.Quit
Set wd = Nothing
Exit Sub
BAD:
MsgBox Err.Description
On Error Resume Next
wd.Quit
Set wd = Nothing
End
End Sub
Долго мучилась пытаясь дописать его, но, к сожалению, похвастаться пока нечем(( Сказывается незнание инструментов, большая часть попыток что-то изменить в коде, вызывают ошибку...
Цель:
1) Копирование не всего содержимого выписки, а только табличной ее части (без шапки и конечных остатков);
2) Копирование сумм поступлений и платежей в числовом формате (с удалением пробелов)
Если кто-то может помочь, буду очень-очень-очень признательна)) В любом случае заранее спасибо:-)
Как и большинство людей мечтаю избаться от рутины в работе. Каждое утро начинается с нудной и мучитильной обработки банковских выписок в формате rtf и разнесении их в Excel. Давно думала о том, как можно автоматизировать этот процесс хотя бы частично. Полазав по сайту нашла следующий код, который полностью копирует содержимое выписки в Excel.
Sub OpenRtfAndPasteToSheets()
Dim wd As Object
Dim ns As Worksheet
On Error Resume Next
'запустим Ворд
Set wd = GetObject("", "Word.Application")
If Err.Number <> 0 Then
Err.Clear
Set wd = CreateObject("Word.Application")
If Err.Number <> 0 Then Exit Sub
End If
On Error GoTo BAD
Do
'получим имя очередного файла
f = Application.GetOpenFilename("Файлы RTF, *.rtf,Все файлы, *.*")
If TypeName(f) = "Boolean" Then Exit Do 'если Отмена - выход
'откроем выбранный очередной файл
Set wdd = wd.Documents.Open(f)
' wd.Visible = True
'скопируем содержимое документа
t = wdd.Content.Copy
'создадим лист для этого документа
Set ns = ActiveWorkbook.Worksheets.Add
'вставим скопированное в новый лист
ns.Paste Destination:=ns.Cells(1, 1)
'немного выравним вид
ns.Cells.WrapText = False
ns.Columns.AutoFit
ns.Rows.AutoFit
wdd.Close
Loop
wd.Quit
Set wd = Nothing
Exit Sub
BAD:
MsgBox Err.Description
On Error Resume Next
wd.Quit
Set wd = Nothing
End
End Sub
Долго мучилась пытаясь дописать его, но, к сожалению, похвастаться пока нечем(( Сказывается незнание инструментов, большая часть попыток что-то изменить в коде, вызывают ошибку...
Цель:
1) Копирование не всего содержимого выписки, а только табличной ее части (без шапки и конечных остатков);
2) Копирование сумм поступлений и платежей в числовом формате (с удалением пробелов)
Если кто-то может помочь, буду очень-очень-очень признательна)) В любом случае заранее спасибо:-)