Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 32 След.
Выделение цветом одной ячейки по значению в другой
 
Target.Offset(0,1) - сдвиг от изменяемой ячейки на 0 строк вниз и 1 столбец вправо. Напишите вместо 1 нужный Вам сдвиг.  
VBA: записать формулу из ячейки в массив и выгрузить потом на новый лист
 
ivanok_v2, это уже я все проверял...у меня ошибки нет, а=1710. Ошибка при выгрузке сразу в cells(2,7).value=mass(1,7), если без переменных
Изменено: yozhik - 23 Авг 2018 15:18:30
VBA: записать формулу из ячейки в массив и выгрузить потом на новый лист
 
Первоначально была выгрузка массива через Resize, потом сделал циклом. Результат один - выгружается первая строка массива, 6 элементов, на 7-м ошибка
VBA: записать формулу из ячейки в массив и выгрузить потом на новый лист
 
дополню. Код писал я в одной из предыдущих тем.
Массив не пустой. В mass(a, 7)  записывается формула со СЧЕТЕСЛИ. При выгрузке ошибка. Причем у меня ошибки нет, формула переносится со значением #VALUE!, у автора ТС не переносится вообще.
Формула в mass(a, 5) обрабатывается нормально, там просто ссылка на ячейку в другой книге, без вычислений.
Пробовали запускать макрос с открытой книгой, на которую ссылка в СЧЕТЕСЛИ, закрытой, перемещать книгу в другую папку (по аналогии - у меня книги нет, и работает), в общем, танцы с бубном какие-то...
Можно ли использовать такую конструкцию: IF.....THEN [ действие] AND [действие]?
 
или так
Код
If (z - f + 1) > V Then OTCH.Rows(x).Insert Shift:=xlDown : V = V + 1
Формула, чтобы переносить значения из одного листа в другой, Шаблон для чарта песен
 
номера наверное, с левого столбца. ИНДЕКС + ПОИСКПОЗ помогут
Редизайнер многоуровневой таблицы, Адаптация примера Николая Павлова
 
vikttur,+, закрывайте тему, в личке добьем. Просто может у кого идеи есть в чем может быть причина..  
Изменено: yozhik - 22 Авг 2018 13:04:20
Редизайнер многоуровневой таблицы, Адаптация примера Николая Павлова
 
Когда строка подсвечена, наведите курсор на а и посмотрите чему а равно
Редизайнер многоуровневой таблицы, Адаптация примера Николая Павлова
 
нажмите Debug - какая строчка будет подсвечена посмотрите
Редизайнер многоуровневой таблицы, Адаптация примера Николая Павлова
 
правильно. значит я не понял..когда вставка на созданный лист первой строки начинается, никакие окна всплывающие код не прерывают?
Редизайнер многоуровневой таблицы, Адаптация примера Николая Павлова
 
кажется понял в чем дело у Вас..
попробуйте дописать второй строчкой кода
Код
Application.DisplayAlerts = False
и предпоследней строчкой
Код
Application.DisplayAlerts = True
Функция Коррел: одна и та же формула в разных ячейках ведет себя по-разному, О
 
данные не равны просто. Хотя и проверка показывает TRUE
сравнил 2 значения 0,28
первое - 0.27999999999999997
второе - 0.28000000000000003
а правильный ответ таки да, #ДЕЛ/0!, какая там корреляция..
перенос строки с одного листа в другой при выполнения условия
 
Макросом бросил и промахнулся видать )))  
Соединить листы из разных файлов в одну книгу.
 
Дмитрий(The_Prist) Щербаков,  спасибо, попробовал sh.cells(i,4).text, тоже сработало как надо
перенос строки с одного листа в другой при выполнения условия
 
Цитата
DSkv написал:
Если бросите в меня макросом
в модуль листа, с которого переносить надо
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 9 Then Exit Sub
Dim cl As Range
For Each cl In Range("A" & Target.Row & ":H" & Target.Row)
    If cl.Value = "" Then
        Application.EnableEvents = False
        Target = ""
        MsgBox ("Заполнены не все поля")
        Application.EnableEvents = True
        Exit Sub
    End If
Next
With Worksheets(Target.Value)
    k = .Cells(Rows.Count, "A").End(xlUp).Row + 1
    .Range("A" & k & ":I" & k).Value = Range("A" & Target.Row & ":I" & Target.Row).Value
End With
End Sub
Выделить часть значений из кода, Выделить часть значений из кода и созранить в другом столбце
 
без точек
Код
Sub nz()
Dim cl As Range
For Each cl In Range("G2:G" & Cells(Rows.Count, "G").End(xlUp).Row)
    If Mid(cl, 12, 1) <> "&" Then cl.Offset(0, -4) = Replace(Mid(cl, 12, 6), ".", "")
Next
End Sub
Выделить часть значений из кода, Выделить часть значений из кода и созранить в другом столбце
 
с точками
Код
Sub nz()
Dim cl As Range
For Each cl In Range("G2:G" & Cells(Rows.Count, "G").End(xlUp).Row)
    If Mid(cl, 12, 1) <> "&" Then cl.Offset(0, -4) = Mid(cl, 12, 6)
Next
End Sub
а без точек - 12 позиция без учета точек? или результат без точек? если в результате есть точка, и ее убираем - остается 5 символов? или добавляем следующий?
перенос строки с одного листа в другой при выполнения условия
 
макросами нельзя...формулы в каждую клеточку тоже нежелательно...Постройте сводную и фильтром потом выбирайте, что нужно, склад или офис
Выделить часть значений из кода, Выделить часть значений из кода и созранить в другом столбце
 
у Вас в номере задания после 0 и 8 точек нет, а после 9 есть. И макрос зачем? простой формулой можно..
[ Закрыто] Календарь алкоголика
 
Календарь этот как отчет о проделанной работе получается...интереснее, если б он как планировщик работал, отслеживал там предстоящие пятницы, выходные и празники и планировал градус к употреблению, с учетом, конечно, фактических данных за предыдущий день-два, а то и рекомендовал бы "прогулы"..)
Соединить листы из разных файлов в одну книгу.
 
yelena321, с Вашим изменением имени листа с "1" на "Август" должно и так работать. Если в 10-й строке заменить Value на Text будет работать и с именем листа "1"
Соединить листы из разных файлов в одну книгу.
 
От тут как-то и я в свое время не разобрался, да так руки и не дошли, если имя листа "1" как объяснить экселю в vba что это имя, а не индекс..)
Мысль пришла, может не Value, а cells(i, 4).Text использовать?  
Изменено: yozhik - 21 Авг 2018 14:41:44
Соединить листы из разных файлов в одну книгу.
 
Код
Sub sbor()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim sh As Worksheet, wb As Workbook
Set sh = ActiveSheet
i = 3
Do While sh.Cells(i, 1).Value <> ""
    pth = sh.Cells(i, 1).Value & "\" & sh.Cells(i, 3).Value
    Set wb = Workbooks.Open(pth, , , , sh.Cells(i, 2).Value)
        wb.Worksheets(sh.cells(i,4).value).Copy after:=sh
    wb.Close 0
    i = i + 1
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Изменено: yozhik - 21 Авг 2018 14:35:14
Соединить листы из разных файлов в одну книгу.
 
вариант. Скопирует все листы со всех указанных книг в книгу со списком.
Код
Sub sbor()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim sh As Worksheet, wsh As Worksheet, wb As Workbook
Set sh = ActiveSheet
i = 3
Do While sh.Cells(i, 1).Value <> ""
    pth = sh.Cells(i, 1).Value & "\" & sh.Cells(i, 3).Value
    Set wb = Workbooks.Open(pth, , , , sh.Cells(i, 2).Value)
    For Each wsh In wb.Worksheets
        wsh.Copy after:=sh
    Next
    wb.Close 0
    i = i + 1
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Соединить листы из разных файлов в одну книгу.
 
в примере - имя файла - C:\Users\Documents\2
это больше похоже на имя папки, к тому же там же Имя книги =1. Имя файла нужно с расширением
Цитата
yelena321 написал:
собрать макросом листы из этих файлов
и получить книгу с большим количеством листов? Если Вы знаете, что дальше делать с этими листами, хорошо, но скорее всего потом будут вопросы что-то типа как собрать все на один лист, или как посчитать во всем листам что-то по условию
[ Закрыто] Формула СУММЕСЛИ, Виснет ПК при обработке большого объема данных.
 
Название темы - Формула Суммесли. Сами же и написали, что она не подходит. Выходит всё, тема исчерпана? а и файла-примера нет
Редизайнер многоуровневой таблицы, Адаптация примера Николая Павлова
 
вот что у меня выходит, просто запустив макрос, ничего не переделывая. Формулы вроде все на месте
Формирование массива по критерию с выборкой данных из него по условию
 

попробуйте отключить автообновление экрана, возможно и автопересчет формул, чтоб ускорить код. Для того, чтоб выводить даты, можно дописать условие во второй цикл. Не знаю, может ли у Вас быть заказ с пометкой сразу "не требует согласования" и отсутствовать запись по этому же заказу с пометкой "на согласовании", поэтому проверку оставил в двух циклах

Код
Sub d()
Application.ScreenUpdating = False
Dim dic
Set dic = CreateObject("Scripting.Dictionary")
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
    If Cells(i, 3).Value = "На согласовании" Or Cells(i, 3).Value = "Не требует согласования" Then
        ky = Cells(i, 1).Value
        it = Cells(i, 2).Value & "|" & Cells(i, 3).Value
        If dic.exists(ky) Then dic.Item(ky) = it Else dic.Add ky, it
    End If
Next
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
    If Cells(i, 3).Value = "Согласован" Or Cells(i, 3).Value = "Не требует согласования" Then
        ky = Cells(i, 1).Value
        s = Split(dic.Item(ky), "|")
        dic.Item(ky) = s(LBound(s)) & "|" & Cells(i, 2).Value
    End If
Next
i = 2
For Each ky In dic.keys
    s = Split(dic.Item(ky), "|")
    Range("E" & i) = ky
    Range("F" & i) = s(LBound(s))
    Range("G" & i) = s(UBound(s))
    i = i + 1
Next
Application.ScreenUpdating = True
End Sub



Изменено: yozhik - 20 Авг 2018 17:57:03
Формирование массива по критерию с выборкой данных из него по условию
 
Цитата
Mutarix написал:
Ошибка ушла после того как добавил On Error Resume Next
после этого оно так -то вообще любые ошибки уходят..) вернее, никуда они не уходят, и скорее всего Вы получите не совсем то, мягко говоря, что ожидаете, а и вполне вероятно на больших объемах данных Вы этого и не заметите
Редизайнер многоуровневой таблицы, Адаптация примера Николая Павлова
 
Xat, не пришло ничего
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 32 След.
Наверх