Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как сделать пересчёт колонки M, анализируя значения в соседней ячейке? / 7 сообщений из 7, страница 1 из 1
20.06.2007, 14:20:00
    #34607814
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать пересчёт колонки M, анализируя значения в соседней ячейке?
не знаю как сделать пересчёт колонки M , анализируя значения в колонке L
Код: plaintext
1.
2.
3.
4.
5.
6.
    Dim pro As Range, rng As Range
    Set pro = ThisWorkbook.Worksheets("Лист1").Range("M5:M" & Rows.Count)
    For Each rng In pro
        if в ячейке, слева, условие истина Then
            rng.Calculate
        End If
    Next
L M05.05.2007=Макрос1(A5;C5;E5;F5)29.05.2007=Макрос1(A5;C5;E5;F5)03.06.2007=Макрос1(A5;C5;E5;F5)01.06.2007=Макрос1(A5;C5;E5;F5)19.06.2007=Макрос1(A5;C5;E5;F5)
Большое САПАСИБО
...
Рейтинг: 0 / 0
20.06.2007, 14:36:50
    #34607880
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать пересчёт колонки M, анализируя значения в соседней ячейке?
если, как показано в посте, ты используешь свою функцию, то совсем просто сделать проверку. например
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Function TestLeft()
Dim LeftCell As Range
    Set LeftCell = Application.Caller.Offset( 0 , - 1 )
    If LeftCell.Value = "True" Or LeftCell.Value = "Истина" Then
        TestLeft = "Да"
    Else
        TestLeft = "Нет"
    End If
End Function
или сделай в качестве еще одного аргумента значение ключевой ячейки, и по нему определяй, пересчитывать ли нет
...
Рейтинг: 0 / 0
20.06.2007, 14:42:29
    #34607903
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать пересчёт колонки M, анализируя значения в соседней ячейке?
надо чтобы Макрос1() , и не только он, (могут быть другие функции)
пересчитались в момент Sub Workbook_Open(), но не по всем ячейкам колонки M
...
Рейтинг: 0 / 0
20.06.2007, 14:47:22
    #34607930
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать пересчёт колонки M, анализируя значения в соседней ячейке?
klen_... но не по всем ячейкам колонки M что это значит?
...
Рейтинг: 0 / 0
20.06.2007, 14:55:59
    #34607969
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать пересчёт колонки M, анализируя значения в соседней ячейке?
В тех ячейках, где дата не заполнена и книга только открывается, ячейки не надо пересчитывать.
P.S.
я думаю, что когда записей будет много, книга будет долго открываться
Код: plaintext
1.
Set pro = ThisWorkbook.Worksheets("Всё").Range("M5:M" & CStr(Rows.Count))
    pro.Calculate
так будет работать долго. (может быть)
поэтому и стараюсь сделать пересчёт не по всем ячейкам
...
Рейтинг: 0 / 0
20.06.2007, 15:11:19
    #34608042
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать пересчёт колонки M, анализируя значения в соседней ячейке?
может быть так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Private Sub Workbook_Open()
Dim keyCell As Range

    Application.Calculation = xlCalculationManual
    
    For Each keyCell In ThisWorkbook.Worksheets("Всё").Range("L5:L" & CStr(Rows.Count))
        If IsDate(keyCell) Then
            keyCell.Dependents.Calculate
        End If
    Next keyCell
End Sub
но как только включишь пересчет, а он наверняка потребуется, то все остальное будет пересчитываться
...
Рейтинг: 0 / 0
20.06.2007, 15:25:37
    #34608106
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать пересчёт колонки M, анализируя значения в соседней ячейке?
vbapro Большое спасибо
сделал по твоему первому совету
Код: plaintext
1.
2.
3.
        data = rng.Offset( 0 , - 1 )
        If IsDate(data) = True Then
            rng.Calculate
        End If
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как сделать пересчёт колонки M, анализируя значения в соседней ячейке? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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