Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вставка данных из одного Excel файла в другой / 4 сообщений из 4, страница 1 из 1
15.10.2015, 13:49
    #39077620
olllllllla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка данных из одного Excel файла в другой
Здравствуйте, подскажите, пожалуйста. Не могу реализовать вставку данных из буфера в файл. Все ячейки в файле-приемщике остаются пустыми. В чем у меня ошибка?
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
Sub Workbook_Open()
Dim i As Integer
Dim t As String
Dim a As Variant
Dim f As Object
Dim x As Workbook
Dim expath As String
Dim xlAPP As Excel.Application
Dim xlBook As Excel.Workbook
Dim WS As Excel.Worksheet

Dim lr&, wb As Workbook, lb As Workbook

Set f = CreateObject("scripting.filesystemobject").OpenTextFile("C:\TEMP\77.txt")
t = f.readline
i = 0

Do
  a = Split(t, ";")

  Worksheets.Item(1).Columns("A:D").ColumnWidth = 14
  Worksheets.Item(1).Columns("B").NumberFormat = "0.00"

  
  Worksheets.Item(1).Cells(i + 1, 1).Value = a(0)
  Worksheets.Item(1).Cells(i + 1, 2).Value = a(1)
  Worksheets.Item(1).Cells(i + 1, 3).Value = a(2)
  Worksheets.Item(1).Cells(i + 1, 4).Value = a(3)
 
  t = f.readline
  i = i + 1
Loop Until f.atendofstream

f.Close
Set f = Nothing

ChDir "C:\TEMP\"

With Application: .ScreenUpdating = False: .DisplayAlerts = False: .EnableEvents = False: End With

Set xlAPP = CreateObject("Excel.Application")
xlAPP.Visible = False
Set xlBook = xlAPP.Workbooks.Add(xlWBATWorksheet)
xlBook.SaveAs ("C:\TEMP\test.xlsx")
xlBook.Close True
Set xlBook = Nothing


Range("A1:F52").Select
Selection.Copy
Workbooks.Open "C:\TEMP\test.xlsx"
Workbooks("test.xlsx").Activate
Range("A1").Select

ActiveSheet.Paste
ActiveWorkbook.Save
ActiveWorkbook.Close

With Application: .EnableEvents = True: .DisplayAlerts = True: .ScreenUpdating = True: End With

End Sub
...
Рейтинг: 0 / 0
15.10.2015, 13:59
    #39077648
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка данных из одного Excel файла в другой
olllllllla, много лишних действий. Зачем открывать новый экземпляр приложения Excel, создавать в нем пустую книгу, потом открывать ее в текущем приложении?
Просто откройте текстовый файл в Excel, Данные - текст по столбцам, разделитель ";". Эти действия прекрасно записываются в макрос.
...
Рейтинг: 0 / 0
15.10.2015, 14:16
    #39077672
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка данных из одного Excel файла в другой
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
xlBook.Close True
Set xlBook = Nothing

Set WS = Worksheets.Item(1)
Workbooks.Open "B:\TEMP\test.xlsx"
WS.Activate
WS.Range("A1:F52").Copy
Workbooks("test.xlsx").Worksheets(1).Activate
ActiveSheet.Paste Destination:=Workbooks("test.xlsx").Worksheets(1).Range("A1")
ActiveWorkbook.Save
ActiveWorkbook.Close
...
Рейтинг: 0 / 0
16.10.2015, 10:52
    #39078356
olllllllla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка данных из одного Excel файла в другой
Akina, спасибо огромное, копируется идеально )
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вставка данных из одного Excel файла в другой / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]