Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/2: Рейтинг темы: голосов - 2, средняя оценка - 5.00
Sasanik
3 / 3 / 0
Регистрация: 12.12.2015
Сообщений: 174
1

Найти итоги из всех листов другой книги и записать в факт для всех выделенных значений рабочей книги

04.01.2016, 12:49. Просмотров 484. Ответов 5
Метки нет (Все метки)

Написал макрос для проверки итогов с фактом. Как запустить всё это по циклу? Чтоб отрабатывался для всех выделенных ячеек.
Я ещё только учусь , а потому в макросе есть "корявки"... Книгу с карточками не нужно открывать каждый раз, и сразу закрывать. Можно за один проход записать все итоги, но как?
0
Вложения
Тип файла: zip Итоги в факт.zip (61.8 Кб, 5 просмотров)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2016, 12:49
Ответы с готовыми решениями:

Заменить один символ на другой на всех листах рабочей книги
Доброго времени суток! Помогите, кто в курсе. В excel нужен макрос замены одного символа на...

макрос для обьединения таблиц со всех листов одной книги в одну
как обьединить таблицы или все листы в одной книге в один лист

Макрос переноса всех данных из одной рабочей книги в другую
Подскажите макрос для переноса всех данных из одной рабочей книги в другую Или какой-нибудь...

Обработка макросом всех листов книги, а не только текущего
Во вложении файл с кодом. Код был написан под лист "1-тех" но его нужно еще использовать в листе...

Защита всех листов книги, но редактирование определённых столбцов или строк
Добрый день. Защищаю всю книгу с вводом пароля. Private Sub Workbook_Open() Dim wsSh...

5
Alex77755
10991 / 3447 / 593
Регистрация: 13.02.2009
Сообщений: 10,237
04.01.2016, 15:00 2
Visual Basic
1
p_colm = aCell.Column
0
toiai
3181 / 936 / 216
Регистрация: 29.05.2010
Сообщений: 2,038
04.01.2016, 15:37 3
Вот вариант с использованием словаря:
Visual Basic
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
Sub ФактОтработаноМЧС_отладить_цикл()
    Dim x As Worksheet, y As Range, zn$
    
    Application.ScreenUpdating = 0              ' Закрываем глазки Excel'ю
    Application.Calculation = xlCalculationManual
    
    Set sh = ActiveSheet
    Workbooks.Open Filename:=ThisWorkbook.Path & "\Карточки"   ' открываем книгу с карточками работы АТТ
    
    With CreateObject("Scripting.Dictionary")
        For Each x In Sheets
            s = Split(Application.Trim(x.Name))
            If UBound(s) > 0 Then
                Set Itog = x.Columns("C:C").Find("ИТОГО")   ' ищем в этом листе строку итогов
                If Not Itog Is Nothing Then .Item(Mid(s(1), 1, 6)) = Itog.Offset(, 25).Value
            End If
        Next
        sh.Activate
        For Each y In Selection
            zn = Replace(Cells(7, y.Column), " ", "")
            If .exists(zn) Then y.Value = .Item(zn)
        Next
    End With
    Application.Calculation = xlAutomatic
    Application.ScreenUpdating = 1
End Sub
Не забудь выделить необходимые ячейки из строки ФАКТ
1
Sasanik
3 / 3 / 0
Регистрация: 12.12.2015
Сообщений: 174
04.01.2016, 16:52  [ТС] 4
Спасибо! Неожиданно Такое мне ещё не ведомо... Осталось поломать логику в голове. Я привык выделять ячейки с номерами АТТ - теперь строку "факт". Зато узнал, как выглядит "целеуказание" . Осталось допилить закрытие книги "карточки". Ну это не критично, позже сделаю сам.

Добавлено через 11 минут
Цитата Сообщение от Alex77755 Посмотреть сообщение
1
p_colm = aCell.Column
Спасибо! Только этого маловато будет Ещё в одном месте заменил "ActiveCell" на "aCell" и тогда в "факт" стали попадать нужные значения. Но вот засада... В столбец с номером АТТ, которая не работала, т.е. "0" в итогах, попадают значения предыдущего столбца. Получается нужна очистка "МЧС"?
Зато появился повод узнать, что такое "aCell"?
0
Alex77755
10991 / 3447 / 593
Регистрация: 13.02.2009
Сообщений: 10,237
04.01.2016, 18:49 5
Так это вот отсюда
For Each aCell In Selection.Cells
Т.е. по всем выделенным ячейкам.
aCell текущая ячейка.
В отличии от активной
N_att = ActiveCell.Value которая программно не меняется
0
Sasanik
3 / 3 / 0
Регистрация: 12.12.2015
Сообщений: 174
04.01.2016, 21:23  [ТС] 6
Alex77755, Спасибо! Буду знать теперь.
0
04.01.2016, 21:23
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2016, 21:23

Подпрограмма: Вывести имена и значения всех встроенных и пользовательских свойств заданной рабочей книги...
(Exel | Word) Создайте процедуру, которая в таблицу Excel выводит имена и значения всех встроенных...

Перелистывние листов рабочей книги, с помощью ListBox
Подскажите кто знает как сделать перелистывание листов в рабочей книге с помощью ListBox...

Поиск значений по всем листам книги и вывод имени листа/столбца для всех совпадений
Всем здравствуйте. Прошу помощи профессионалов. Прикрепил файл, Есть задача - необходимо сделать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.