Результаты поиска
krosav4ig
Дата: Пятница, 06.06.2014, 23:32 |
Сообщение № 101 | Тема: оптимизм
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
[moder]Не будем спешить, подождём реакции ТС на замечание[/moder]
[moder]Не будем спешить, подождём реакции ТС на замечание[/moder] krosav4ig
Ответить
Сообщение [moder]Не будем спешить, подождём реакции ТС на замечание[/moder] Автор - krosav4ig Дата добавления - 06.06.2014 в 23:32
krosav4ig
Дата: Суббота, 07.06.2014, 21:21 |
Сообщение № 102 | Тема: ячейки с одинаковыми значениями в столбце и объединени ячеек
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
[vba]
Код
Sub sdf() Application.ScreenUpdating = 0: Application.DisplayAlerts = 0 Dim Rng As Range, Rng2 As Range Dim i&, j&, r& With ThisWorkbook.Worksheets("Лист1") r = .Cells(.Rows.Count, 2).End(xlUp).Row Set Rng = .Range("B2:B" & r) i = 1 Do While i < r - 1 Do While Rng.Cells(i).Offset(j) = Rng.Cells(i) j = j + 1 Loop If j - 1 Then Set rng2 = .Range(Rng.Cells(i), Rng.Cells(i).Offset(j - 1)) rng2.Merge i = i + j Else Set rng2 = Rng.Cells(i) i = i + 1 End If With rng2.Borders .LineStyle = xlContinuous .ColorIndex = 0 .Weight = xlMedium End With Loop End With Application.DisplayAlerts = 1 End Sub
[/vba]
[vba]
Код
Sub sdf() Application.ScreenUpdating = 0: Application.DisplayAlerts = 0 Dim Rng As Range, Rng2 As Range Dim i&, j&, r& With ThisWorkbook.Worksheets("Лист1") r = .Cells(.Rows.Count, 2).End(xlUp).Row Set Rng = .Range("B2:B" & r) i = 1 Do While i < r - 1 Do While Rng.Cells(i).Offset(j) = Rng.Cells(i) j = j + 1 Loop If j - 1 Then Set rng2 = .Range(Rng.Cells(i), Rng.Cells(i).Offset(j - 1)) rng2.Merge i = i + j Else Set rng2 = Rng.Cells(i) i = i + 1 End If With rng2.Borders .LineStyle = xlContinuous .ColorIndex = 0 .Weight = xlMedium End With Loop End With Application.DisplayAlerts = 1 End Sub
[/vba]
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 07.06.2014, 21:30
Ответить
Сообщение
[vba]
Код
Sub sdf() Application.ScreenUpdating = 0: Application.DisplayAlerts = 0 Dim Rng As Range, Rng2 As Range Dim i&, j&, r& With ThisWorkbook.Worksheets("Лист1") r = .Cells(.Rows.Count, 2).End(xlUp).Row Set Rng = .Range("B2:B" & r) i = 1 Do While i < r - 1 Do While Rng.Cells(i).Offset(j) = Rng.Cells(i) j = j + 1 Loop If j - 1 Then Set rng2 = .Range(Rng.Cells(i), Rng.Cells(i).Offset(j - 1)) rng2.Merge i = i + j Else Set rng2 = Rng.Cells(i) i = i + 1 End If With rng2.Borders .LineStyle = xlContinuous .ColorIndex = 0 .Weight = xlMedium End With Loop End With Application.DisplayAlerts = 1 End Sub
[/vba]
Автор - krosav4ig Дата добавления - 07.06.2014 в 21:21
krosav4ig
Дата: Суббота, 07.06.2014, 23:32 |
Сообщение № 103 | Тема: ячейки с одинаковыми значениями в столбце и объединени ячеек
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
вариант с условным форматированием
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение вариант с условным форматированием Автор - krosav4ig Дата добавления - 07.06.2014 в 23:32
krosav4ig
Дата: Суббота, 07.06.2014, 23:52 |
Сообщение № 104 | Тема: Поиск последней записи за месяц.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
еще вариант если даты будут отсортированы по возрастанию Код
=ПОИСКПОЗ(0;$A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18)))
или если в случайном порядке Код
=МАКС(ЕСЛИ($A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18));;СТРОКА($A$1:$A$18)))
или если нужно получить дату Код
=МАКС(ЕСЛИОШИБКА(($A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18)))^0;$A$1:$A$18))
еще вариант если даты будут отсортированы по возрастанию Код
=ПОИСКПОЗ(0;$A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18)))
или если в случайном порядке Код
=МАКС(ЕСЛИ($A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18));;СТРОКА($A$1:$A$18)))
или если нужно получить дату Код
=МАКС(ЕСЛИОШИБКА(($A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18)))^0;$A$1:$A$18))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Воскресенье, 08.06.2014, 00:08
Ответить
Сообщение еще вариант если даты будут отсортированы по возрастанию Код
=ПОИСКПОЗ(0;$A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18)))
или если в случайном порядке Код
=МАКС(ЕСЛИ($A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18));;СТРОКА($A$1:$A$18)))
или если нужно получить дату Код
=МАКС(ЕСЛИОШИБКА(($A$1:$A$18-ДАТА(C1;C2;ДЕНЬ($A$1:$A$18)))^0;$A$1:$A$18))
Автор - krosav4ig Дата добавления - 07.06.2014 в 23:52
krosav4ig
Дата: Воскресенье, 08.06.2014, 03:29 |
Сообщение № 105 | Тема: Табель учёта рабочего времени
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
вариант с доп. таблицей
К сообщению приложен файл:
1_.xls
(66.5 Kb)
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Воскресенье, 08.06.2014, 03:32
Ответить
Сообщение вариант с доп. таблицей Автор - krosav4ig Дата добавления - 08.06.2014 в 03:29
krosav4ig
Дата: Воскресенье, 08.06.2014, 03:39 |
Сообщение № 106 | Тема: Создание сложной форумы
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
файл в студию
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение файл в студию Автор - krosav4ig Дата добавления - 08.06.2014 в 03:39
krosav4ig
Дата: Понедельник, 09.06.2014, 04:16 |
Сообщение № 107 | Тема: Определение суммы за период по каждому ответственному
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
а можно еще так
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение а можно еще так Автор - krosav4ig Дата добавления - 09.06.2014 в 04:16
krosav4ig
Дата: Понедельник, 09.06.2014, 04:28 |
Сообщение № 108 | Тема: Необходимо удалить весь текст перед артикулами.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
..
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение .. Автор - krosav4ig Дата добавления - 09.06.2014 в 04:28
krosav4ig
Дата: Понедельник, 09.06.2014, 10:53 |
Сообщение № 109 | Тема: Формула для просчета количества дней
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Fedor , замените у себя в формуле 12 на 0 и будет вам щастье
Fedor , замените у себя в формуле 12 на 0 и будет вам щастьеkrosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Fedor , замените у себя в формуле 12 на 0 и будет вам щастьеАвтор - krosav4ig Дата добавления - 09.06.2014 в 10:53
krosav4ig
Дата: Вторник, 10.06.2014, 21:59 |
Сообщение № 110 | Тема: Заполнить ячейки данными из основной таблицы при выборе из
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
если в основной таблице строки будут всегда группированы по ФИО, то можно так формула для A7 формула (не массивная) Код
=ЕСЛИОШИБКА(ИНДЕКС(ДВССЫЛ("'Основная таблица'!R"&ПОИСКПОЗ($A$4;'Основная таблица'!$A:$A;0)&"C2:R"&ПОИСКПОЗ($A$4;'Основная таблица'!$A:$A)&"C2";0);СТРОКА(A1));"")
если в основной таблице строки будут всегда группированы по ФИО, то можно так формула для A7 формула (не массивная) Код
=ЕСЛИОШИБКА(ИНДЕКС(ДВССЫЛ("'Основная таблица'!R"&ПОИСКПОЗ($A$4;'Основная таблица'!$A:$A;0)&"C2:R"&ПОИСКПОЗ($A$4;'Основная таблица'!$A:$A)&"C2";0);СТРОКА(A1));"")
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение если в основной таблице строки будут всегда группированы по ФИО, то можно так формула для A7 формула (не массивная) Код
=ЕСЛИОШИБКА(ИНДЕКС(ДВССЫЛ("'Основная таблица'!R"&ПОИСКПОЗ($A$4;'Основная таблица'!$A:$A;0)&"C2:R"&ПОИСКПОЗ($A$4;'Основная таблица'!$A:$A)&"C2";0);СТРОКА(A1));"")
Автор - krosav4ig Дата добавления - 10.06.2014 в 21:59
krosav4ig
Дата: Четверг, 12.06.2014, 18:44 |
Сообщение № 111 | Тема: Копирование массива данных с одного файла в другой
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
вместо [vba]Код
wb1.Range("E18:E" & Cells(Rows.Count, 1).End(xlUp).Row).Copy wb2.Range("F3")
[/vba]должно быть[vba]Код
wb1.Range("E18:E" & wb1.Cells(wb1.Rows.Count, 5).End(xlUp).Row).Copy wb2.Range("F3")
[/vba] можно еще и так [vba]Код
wb1.Range("E18").Resize(wb1.Range("E18").End(xlDown).Row - 17).Copy wb2.Range("F3")
[/vba]или так[vba]Код
With wb1.Range("E18"): .Resize(.End(xlDown).Row - .Row + 1).Copy wb2.Range("F3"): End With
[/vba]
вместо [vba]Код
wb1.Range("E18:E" & Cells(Rows.Count, 1).End(xlUp).Row).Copy wb2.Range("F3")
[/vba]должно быть[vba]Код
wb1.Range("E18:E" & wb1.Cells(wb1.Rows.Count, 5).End(xlUp).Row).Copy wb2.Range("F3")
[/vba] можно еще и так [vba]Код
wb1.Range("E18").Resize(wb1.Range("E18").End(xlDown).Row - 17).Copy wb2.Range("F3")
[/vba]или так[vba]Код
With wb1.Range("E18"): .Resize(.End(xlDown).Row - .Row + 1).Copy wb2.Range("F3"): End With
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Четверг, 12.06.2014, 18:52
Ответить
Сообщение вместо [vba]Код
wb1.Range("E18:E" & Cells(Rows.Count, 1).End(xlUp).Row).Copy wb2.Range("F3")
[/vba]должно быть[vba]Код
wb1.Range("E18:E" & wb1.Cells(wb1.Rows.Count, 5).End(xlUp).Row).Copy wb2.Range("F3")
[/vba] можно еще и так [vba]Код
wb1.Range("E18").Resize(wb1.Range("E18").End(xlDown).Row - 17).Copy wb2.Range("F3")
[/vba]или так[vba]Код
With wb1.Range("E18"): .Resize(.End(xlDown).Row - .Row + 1).Copy wb2.Range("F3"): End With
[/vba] Автор - krosav4ig Дата добавления - 12.06.2014 в 18:44
krosav4ig
Дата: Пятница, 13.06.2014, 00:15 |
Сообщение № 112 | Тема: Выбор условий по времени
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
ShAM , ага, я тоже не догнал stria , если в пределах одних суток, то формулы для K16 Код
=ВРЕМЯ(0;ПОИСКПОЗ(0.75;ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0)+ЕСЛИ(ЕНД(ПОИСКПОЗ(1+ВРЕМЗНАЧ("2:00");ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0));0;ЧСТРОК(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))-ПОИСКПОЗ(1+ВРЕМЗНАЧ("2:00");ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0));)
для L16 Код
=ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00")-K16
ShAM , ага, я тоже не догнал stria , если в пределах одних суток, то формулы для K16 Код
=ВРЕМЯ(0;ПОИСКПОЗ(0.75;ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0)+ЕСЛИ(ЕНД(ПОИСКПОЗ(1+ВРЕМЗНАЧ("2:00");ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0));0;ЧСТРОК(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))-ПОИСКПОЗ(1+ВРЕМЗНАЧ("2:00");ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0));)
для L16 Код
=ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00")-K16
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Пятница, 13.06.2014, 00:37
Ответить
Сообщение ShAM , ага, я тоже не догнал stria , если в пределах одних суток, то формулы для K16 Код
=ВРЕМЯ(0;ПОИСКПОЗ(0.75;ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0)+ЕСЛИ(ЕНД(ПОИСКПОЗ(1+ВРЕМЗНАЧ("2:00");ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0));0;ЧСТРОК(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))-ПОИСКПОЗ(1+ВРЕМЗНАЧ("2:00");ТЕКСТ(C9;"00\:00")+СТРОКА(СМЕЩ($A$1;;;ТЕКСТ(ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00");"[мм]")))/1440;0));)
для L16 Код
=ЕСЛИ(G6<C9;1)+ТЕКСТ(G6;"00\:00")-ТЕКСТ(C9;"00\:00")-K16
Автор - krosav4ig Дата добавления - 13.06.2014 в 00:15
krosav4ig
Дата: Пятница, 13.06.2014, 04:11 |
Сообщение № 113 | Тема: Подстановка цвета
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
можно так
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Пятница, 13.06.2014, 04:18
Ответить
Сообщение можно так Автор - krosav4ig Дата добавления - 13.06.2014 в 04:11
krosav4ig
Дата: Пятница, 13.06.2014, 16:35 |
Сообщение № 114 | Тема: Выбор условий по времени
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
совсем забыл... моя формула для K16 - формула массива (вводится Ctrl+Shift+Enter) формат ячейки для K16 и L16 - время окончание рабочего времени является --- G6+30 мин
ну дык и замените в формулах G6 на G6+30 вот только 5:35 ну никак не получится
совсем забыл... моя формула для K16 - формула массива (вводится Ctrl+Shift+Enter) формат ячейки для K16 и L16 - время окончание рабочего времени является --- G6+30 мин
ну дык и замените в формулах G6 на G6+30 вот только 5:35 ну никак не получится krosav4ig
К сообщению приложен файл:
22_.xlsx
(24.7 Kb)
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Пятница, 13.06.2014, 16:35
Ответить
Сообщение совсем забыл... моя формула для K16 - формула массива (вводится Ctrl+Shift+Enter) формат ячейки для K16 и L16 - время окончание рабочего времени является --- G6+30 мин
ну дык и замените в формулах G6 на G6+30 вот только 5:35 ну никак не получится Автор - krosav4ig Дата добавления - 13.06.2014 в 16:35
krosav4ig
Дата: Суббота, 14.06.2014, 18:38 |
Сообщение № 115 | Тема: Не рабочая ДВССЫЛ
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Цитата
Если формула ссылается на значения или ячейки других листов или книг, имена которых содержат знаки, не являющиеся буквами или цифрами, в формуле такие имена необходимо заключать в одинарные кавычки
написать формулу Код
=ДВССЫЛ("'"&D$2&"'!C2")
если формула будет растягиваться вниз , то можно Код
=ДВССЫЛ("'"&D$2&"'!C"&СТРОКА(A2))
Цитата
Если формула ссылается на значения или ячейки других листов или книг, имена которых содержат знаки, не являющиеся буквами или цифрами, в формуле такие имена необходимо заключать в одинарные кавычки
написать формулу Код
=ДВССЫЛ("'"&D$2&"'!C2")
если формула будет растягиваться вниз , то можно Код
=ДВССЫЛ("'"&D$2&"'!C"&СТРОКА(A2))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 14.06.2014, 18:39
Ответить
Сообщение Цитата
Если формула ссылается на значения или ячейки других листов или книг, имена которых содержат знаки, не являющиеся буквами или цифрами, в формуле такие имена необходимо заключать в одинарные кавычки
написать формулу Код
=ДВССЫЛ("'"&D$2&"'!C2")
если формула будет растягиваться вниз , то можно Код
=ДВССЫЛ("'"&D$2&"'!C"&СТРОКА(A2))
Автор - krosav4ig Дата добавления - 14.06.2014 в 18:38
krosav4ig
Дата: Суббота, 14.06.2014, 19:38 |
Сообщение № 116 | Тема: Формула, зависящая от текстового значения
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
так чтоли?
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение так чтоли? Автор - krosav4ig Дата добавления - 14.06.2014 в 19:38
krosav4ig
Дата: Воскресенье, 15.06.2014, 02:00 |
Сообщение № 117 | Тема: Выдернуть текст из середины текста
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
ну раз речь зашла за UDF, вот еще вариант [vba]Код
Function substring(s$, n%) As Variant Select Case n Case 1: substring = Split(Split(s, ")")(0), "(")(1) Case 2: substring = Split(Split(s, ")")(1), "(")(1) Case 3: substring = TimeValue(Right(Split(s, ":")(0), 2) & _ ":" & Left(Split(s, ":")(1), 2)) Case 4: substring = TimeValue(Right(Split(s, ":")(1), 2) & _ ":" & Left(Split(s, ":")(2), 2)) End Select End Function
[/vba] и еще формулы до кучи (все массивные) 1 скобкиКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=")";СТОЛБЕЦ(1:1);"");1)-2;2)
2 скобкиКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=")";СТОЛБЕЦ(1:1);"");2)-4;4)
1 времяКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=":";СТОЛБЕЦ(1:1);"");1)-2;5)
2 времяКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=":";СТОЛБЕЦ(1:1);"");2)-2;5)
ну раз речь зашла за UDF, вот еще вариант [vba]Код
Function substring(s$, n%) As Variant Select Case n Case 1: substring = Split(Split(s, ")")(0), "(")(1) Case 2: substring = Split(Split(s, ")")(1), "(")(1) Case 3: substring = TimeValue(Right(Split(s, ":")(0), 2) & _ ":" & Left(Split(s, ":")(1), 2)) Case 4: substring = TimeValue(Right(Split(s, ":")(1), 2) & _ ":" & Left(Split(s, ":")(2), 2)) End Select End Function
[/vba] и еще формулы до кучи (все массивные) 1 скобкиКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=")";СТОЛБЕЦ(1:1);"");1)-2;2)
2 скобкиКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=")";СТОЛБЕЦ(1:1);"");2)-4;4)
1 времяКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=":";СТОЛБЕЦ(1:1);"");1)-2;5)
2 времяКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=":";СТОЛБЕЦ(1:1);"");2)-2;5)
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Воскресенье, 15.06.2014, 03:04
Ответить
Сообщение ну раз речь зашла за UDF, вот еще вариант [vba]Код
Function substring(s$, n%) As Variant Select Case n Case 1: substring = Split(Split(s, ")")(0), "(")(1) Case 2: substring = Split(Split(s, ")")(1), "(")(1) Case 3: substring = TimeValue(Right(Split(s, ":")(0), 2) & _ ":" & Left(Split(s, ":")(1), 2)) Case 4: substring = TimeValue(Right(Split(s, ":")(1), 2) & _ ":" & Left(Split(s, ":")(2), 2)) End Select End Function
[/vba] и еще формулы до кучи (все массивные) 1 скобкиКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=")";СТОЛБЕЦ(1:1);"");1)-2;2)
2 скобкиКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=")";СТОЛБЕЦ(1:1);"");2)-4;4)
1 времяКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=":";СТОЛБЕЦ(1:1);"");1)-2;5)
2 времяКод
=ПСТР(C2;НАИМЕНЬШИЙ(ЕСЛИ(ПСТР(C2;СТОЛБЕЦ(1:1);1)=":";СТОЛБЕЦ(1:1);"");2)-2;5)
Автор - krosav4ig Дата добавления - 15.06.2014 в 02:00
krosav4ig
Дата: Воскресенье, 15.06.2014, 04:56 |
Сообщение № 118 | Тема: Сравнение 2 ячеек
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Если оба числа должны быть не равными нулю Код
=И(A1*B1;ЗНАК(A1)=ЗНАК(B1))
Функция ЗНАК Цитата
Определяет знак числа. Возвращает значение1, если число положительное, 0 (ноль), если число равно 0, и -1, если число отрицательное.
Если оба числа должны быть не равными нулю Код
=И(A1*B1;ЗНАК(A1)=ЗНАК(B1))
Функция ЗНАК Цитата
Определяет знак числа. Возвращает значение1, если число положительное, 0 (ноль), если число равно 0, и -1, если число отрицательное.
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Воскресенье, 15.06.2014, 05:55
Ответить
Сообщение Если оба числа должны быть не равными нулю Код
=И(A1*B1;ЗНАК(A1)=ЗНАК(B1))
Функция ЗНАК Цитата
Определяет знак числа. Возвращает значение1, если число положительное, 0 (ноль), если число равно 0, и -1, если число отрицательное.
Автор - krosav4ig Дата добавления - 15.06.2014 в 04:56
krosav4ig
Дата: Воскресенье, 15.06.2014, 18:38 |
Сообщение № 119 | Тема: vba вместо ВПР
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
subjugator , как вариант, аналог ВПР на VBA связка Find и Offset [vba]Код
Function VPR(ByRef cell As Range, ByRef rng As Range, col&) VPR = rng.Find(cell, , xlValues, 1).Offset(0, IIf(col + Abs(col), col - 1, 1 + col)) End Function
[/vba]
subjugator , как вариант, аналог ВПР на VBA связка Find и Offset [vba]Код
Function VPR(ByRef cell As Range, ByRef rng As Range, col&) VPR = rng.Find(cell, , xlValues, 1).Offset(0, IIf(col + Abs(col), col - 1, 1 + col)) End Function
[/vba]krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Воскресенье, 15.06.2014, 19:21
Ответить
Сообщение subjugator , как вариант, аналог ВПР на VBA связка Find и Offset [vba]Код
Function VPR(ByRef cell As Range, ByRef rng As Range, col&) VPR = rng.Find(cell, , xlValues, 1).Offset(0, IIf(col + Abs(col), col - 1, 1 + col)) End Function
[/vba]Автор - krosav4ig Дата добавления - 15.06.2014 в 18:38
krosav4ig
Дата: Воскресенье, 15.06.2014, 20:03 |
Сообщение № 120 | Тема: Поиск значений с последующим переносом значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
pan-piramida , формулы можно сделать динамическими, для этого нужно заменить наКод
СМЕЩ(архив!$A$2;;;МАКС(архив!A:A))
наКод
СМЕЩ(архив!$C$2;;;МАКС(архив!A:A))
наКод
СМЕЩ(архив!$D$2:$J$2;;;МАКС(архив!A:A))
наКод
СТРОКА(СМЕЩ($A$1;;;МАКС(архив!A:A)))
наКод
СМЕЩ(архив!$A$2:$K$2;;;МАКС(архив!A:A))
pan-piramida , формулы можно сделать динамическими, для этого нужно заменить наКод
СМЕЩ(архив!$A$2;;;МАКС(архив!A:A))
наКод
СМЕЩ(архив!$C$2;;;МАКС(архив!A:A))
наКод
СМЕЩ(архив!$D$2:$J$2;;;МАКС(архив!A:A))
наКод
СТРОКА(СМЕЩ($A$1;;;МАКС(архив!A:A)))
наКод
СМЕЩ(архив!$A$2:$K$2;;;МАКС(архив!A:A))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Воскресенье, 15.06.2014, 20:17
Ответить
Сообщение pan-piramida , формулы можно сделать динамическими, для этого нужно заменить наКод
СМЕЩ(архив!$A$2;;;МАКС(архив!A:A))
наКод
СМЕЩ(архив!$C$2;;;МАКС(архив!A:A))
наКод
СМЕЩ(архив!$D$2:$J$2;;;МАКС(архив!A:A))
наКод
СТРОКА(СМЕЩ($A$1;;;МАКС(архив!A:A)))
наКод
СМЕЩ(архив!$A$2:$K$2;;;МАКС(архив!A:A))
Автор - krosav4ig Дата добавления - 15.06.2014 в 20:03