powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
13 сообщений из 13, страница 1 из 1
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33250560
xom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xom
Гость
Господа, подскажите как правильно считывать данные из excel-файла и записывать их в другой. Например, мне из одной таблицы нужно "вытянуть" несколько колонок и записать их соотв. в другой файл.
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33250758
e121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А поподробнее?
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33250853
e121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
' это пример записи из формы в рабочую книгу добавить новый лист
ThisWorkbook.Worksheets.Add.Activate
ActiveSheet.Name = FormParam.SettingName
If FormParam.CheckBox4.Value = True Then
ActiveSheet.Cells(1, 1).Value = 1
End If
Cells(3, 2).Value = FormParam.FRName
Cells(4, 2).Value = FormParam.ReportName
Cells(5, 1).Activate
For i = 0 To FormParam.LocList.ListCount - 1
Cells(5 + i, 1).Value = FormParam.LocList.List(i)
Next i

Метода, имхо, такова:
1) Открыть книгу
Application.Workbooks.Open("полный путь для книги").Activate
2) Активировать лист

ActiveWorkBook.WorkSheets("Sheet1").Activate
3) Ходить по ячейкам и считывать
а)
Данные можно сразу записывать в новую книгу, но это работает в 2 раза медленнее, чем загрузка/считывание из массива.
Если переключаться из одной книги в другую, то учесть, что
к активной книге обращаются как ActiveWorkBook
к неактивной ThisWorkBook
Актвировать неактивную книгу. ThisWorkbook.Worksheets("Sheet5").Activate
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33250860
xom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xom
Гость
Подробнее: ежемесячно сотавляется отчет (что-то вроде анализа продаж в 1с), этот отчет - есть таблица в excel и содержит 1-я колонка "номенклатура", 2-я "количество проданных товаров" и т.д. Также есть еще одна таблица - прайс лист, из которой надо вытягивать колонку с ценой для каждой позиции.
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33250952
xom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xom
Гость
А как в цикле пробежатся по всем не пустым строкам книги?
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33251095
e121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если в цикле делать проверку

If ActiveSheet.Cells(i,j).Value<>Empty then
End if
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33251235
xom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xom
Гость
еще один дурацкий вопрос: а как сделать чтобы столбец А этой книги содержал все значения столбца А открытой книги?
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33251370
e121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Copy-Paste )))
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33251393
xom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xom
Гость
Какой вопрос, такой и ответ :)
ActiveWorkbook.ActiveSheet.Range("A").Copy Destination:=ThisWorkbook.Worksheets("Sheet1").Range("A")
Выот на это копи выдается ошибка out of range, к чему бы это?
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33251505
e121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Columns(n2_2004).Select
Range(Cells(2, n2_2004), Cells(2, n2_2004)).Activate
Selection.Copy
Columns((n2_2004 + 1)).Select
Range(Cells(2, (n2_2004 + 1)), Cells(2, (n2_2004 + 1))).Activate
ActiveSheet.Paste
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33251540
xom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xom
Гость
Спасибо! вобщем-то немного подразобрался...
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33252096
xom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xom
Гость
По ходу дела возник еще один вопрос:

Известно количество строк в таблице n, необходимо сделать так чтобы, в макросе в одну из колонок (например, D) добавлялась формула =ПРОИЗВЕД(A1;B1) и т.д.

do while i <= n
with ThisWorkBook.Worksheets("Sheet 1")
.range("D1").formulaLocal= "=ПРОИЗВЕД(A1;B1)"
.range("D2").formulaLocal= "=ПРОИЗВЕД(A2;B2)"
..........ну и так n раз
.range("Dn").formulaLocal= "=ПРОИЗВЕД(An;Bn)"
end with
i=i+1
loop

Как это можно сделать?Число n,как правило, достаточно большое и частенько меняется.
...
Рейтинг: 0 / 0
Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
    #33252178
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
    Dim i As Integer
    Dim n As Long
    
    n =  4 
    
    For i =  1  To n
        ThisWorkbook.Worksheets("Лист1").Range("D" & i).FormulaLocal = _
          "=Произвед(A" & i & ":" & "B" & i & ")"
    Next
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как считывать данные из одного excel-файла (по ячейкам, столбцам) и записывать в другой.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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