Результаты поиска
krosav4ig
Дата: Пятница, 11.11.2016, 18:22 |
Сообщение № 1041 | Тема: Переменная в операторе Sort
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте, у вас ошибка в блоке [vba]Код
Select Case ... End Select
[/vba] вот так будет правильно [vba]Код
Select Case Left(s, 1) Case "M" 'M англ CusOrd = "M1,M2,M3,M4,M5,M6,M7,M8,M9,M10" Case "М" 'M русск CusOrd = "М1,М2,М3,М4,М5,М6,М7,М8,М9,М10" End Select
[/vba] или вот так [vba]Код
f = Left(s, 1) Select Case True Case f = "M" 'M англ CusOrd = "M1,M2,M3,M4,M5,M6,M7,M8,M9,M10" Case f = "М" 'M русск CusOrd = "М1,М2,М3,М4,М5,М6,М7,М8,М9,М10" End Select
[/vba]или вообще вот так [vba]Код
CusOrd = Mid(Join(Array(Nil, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), "," & Left(s, 1)), 2)
[/vba] а если при объявлении переменной задать длину, то можно и не использовать Left() [vba]Код
Sub sort() Dim CusOrd As String Dim f As String * 1 Dim LC As Integer Set twb = ActiveSheet 'ActiveWorkbook.Worksheets(1) With twb LC = .Cells(Rows.Count, 1).End(xlUp).Row f = .Range("c1").Value Select Case f Case "M", "М" CusOrd = Mid(Join(Array(Nil, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), "," & f), 2) Case Else Exit Sub End Select .sort.SortFields.Clear .sort.SortFields.Add Key:=Range("C1:C" & LC), _ SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:=CusOrd, DataOption:=xlSortNormal With .sort .SetRange Range("A1:D" & LC) .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End With End Sub
[/vba]
Здравствуйте, у вас ошибка в блоке [vba]Код
Select Case ... End Select
[/vba] вот так будет правильно [vba]Код
Select Case Left(s, 1) Case "M" 'M англ CusOrd = "M1,M2,M3,M4,M5,M6,M7,M8,M9,M10" Case "М" 'M русск CusOrd = "М1,М2,М3,М4,М5,М6,М7,М8,М9,М10" End Select
[/vba] или вот так [vba]Код
f = Left(s, 1) Select Case True Case f = "M" 'M англ CusOrd = "M1,M2,M3,M4,M5,M6,M7,M8,M9,M10" Case f = "М" 'M русск CusOrd = "М1,М2,М3,М4,М5,М6,М7,М8,М9,М10" End Select
[/vba]или вообще вот так [vba]Код
CusOrd = Mid(Join(Array(Nil, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), "," & Left(s, 1)), 2)
[/vba] а если при объявлении переменной задать длину, то можно и не использовать Left() [vba]Код
Sub sort() Dim CusOrd As String Dim f As String * 1 Dim LC As Integer Set twb = ActiveSheet 'ActiveWorkbook.Worksheets(1) With twb LC = .Cells(Rows.Count, 1).End(xlUp).Row f = .Range("c1").Value Select Case f Case "M", "М" CusOrd = Mid(Join(Array(Nil, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), "," & f), 2) Case Else Exit Sub End Select .sort.SortFields.Clear .sort.SortFields.Add Key:=Range("C1:C" & LC), _ SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:=CusOrd, DataOption:=xlSortNormal With .sort .SetRange Range("A1:D" & LC) .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End With End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Пятница, 11.11.2016, 18:41
Ответить
Сообщение Здравствуйте, у вас ошибка в блоке [vba]Код
Select Case ... End Select
[/vba] вот так будет правильно [vba]Код
Select Case Left(s, 1) Case "M" 'M англ CusOrd = "M1,M2,M3,M4,M5,M6,M7,M8,M9,M10" Case "М" 'M русск CusOrd = "М1,М2,М3,М4,М5,М6,М7,М8,М9,М10" End Select
[/vba] или вот так [vba]Код
f = Left(s, 1) Select Case True Case f = "M" 'M англ CusOrd = "M1,M2,M3,M4,M5,M6,M7,M8,M9,M10" Case f = "М" 'M русск CusOrd = "М1,М2,М3,М4,М5,М6,М7,М8,М9,М10" End Select
[/vba]или вообще вот так [vba]Код
CusOrd = Mid(Join(Array(Nil, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), "," & Left(s, 1)), 2)
[/vba] а если при объявлении переменной задать длину, то можно и не использовать Left() [vba]Код
Sub sort() Dim CusOrd As String Dim f As String * 1 Dim LC As Integer Set twb = ActiveSheet 'ActiveWorkbook.Worksheets(1) With twb LC = .Cells(Rows.Count, 1).End(xlUp).Row f = .Range("c1").Value Select Case f Case "M", "М" CusOrd = Mid(Join(Array(Nil, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), "," & f), 2) Case Else Exit Sub End Select .sort.SortFields.Clear .sort.SortFields.Add Key:=Range("C1:C" & LC), _ SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:=CusOrd, DataOption:=xlSortNormal With .sort .SetRange Range("A1:D" & LC) .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End With End Sub
[/vba] Автор - krosav4ig Дата добавления - 11.11.2016 в 18:22
krosav4ig
Дата: Четверг, 10.11.2016, 18:49 |
Сообщение № 1042 | Тема: Клуб 500
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
увидел свою репу, зашел сюда, а тут мну ужо напоздравляли. Спасибо большое, очень приятно.
увидел свою репу, зашел сюда, а тут мну ужо напоздравляли. Спасибо большое, очень приятно. krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение увидел свою репу, зашел сюда, а тут мну ужо напоздравляли. Спасибо большое, очень приятно. Автор - krosav4ig Дата добавления - 10.11.2016 в 18:49
krosav4ig
Дата: Вторник, 08.11.2016, 16:05 |
Сообщение № 1043 | Тема: Какой командой можно вывести часть массива из памяти?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
имхо, лучше написать [vba]Код
rr = Evaluate("Row(R" & r1 & ":R" & r2 & ")") cc = Evaluate("row(R" & c1 & ":R" & c2 & ")")
[/vba]дабы избежать ошибок при смене стиля ссылок на R1C1
имхо, лучше написать [vba]Код
rr = Evaluate("Row(R" & r1 & ":R" & r2 & ")") cc = Evaluate("row(R" & c1 & ":R" & c2 & ")")
[/vba]дабы избежать ошибок при смене стиля ссылок на R1C1 krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение имхо, лучше написать [vba]Код
rr = Evaluate("Row(R" & r1 & ":R" & r2 & ")") cc = Evaluate("row(R" & c1 & ":R" & c2 & ")")
[/vba]дабы избежать ошибок при смене стиля ссылок на R1C1 Автор - krosav4ig Дата добавления - 08.11.2016 в 16:05
krosav4ig
Дата: Понедельник, 07.11.2016, 19:59 |
Сообщение № 1044 | Тема: ИСТИНА, если "/" в ячейке встречается больше одного раза.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
и у мну тож 22 и 23 без =
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение и у мну тож 22 и 23 без = Автор - krosav4ig Дата добавления - 07.11.2016 в 19:59
krosav4ig
Дата: Воскресенье, 06.11.2016, 22:20 |
Сообщение № 1045 | Тема: Как узнать, какие иконки в сортировке
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
если сортировка по значку, то [vba][/vba] - это обьект icon, чтобы получить iconset просто обращаемся к его предку [vba]Код
sortfield.sortonvalue.parent.id
[/vba] будет id используемого в столбце iconset'а
если сортировка по значку, то [vba][/vba] - это обьект icon, чтобы получить iconset просто обращаемся к его предку [vba]Код
sortfield.sortonvalue.parent.id
[/vba] будет id используемого в столбце iconset'а krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение если сортировка по значку, то [vba][/vba] - это обьект icon, чтобы получить iconset просто обращаемся к его предку [vba]Код
sortfield.sortonvalue.parent.id
[/vba] будет id используемого в столбце iconset'а Автор - krosav4ig Дата добавления - 06.11.2016 в 22:20
krosav4ig
Дата: Воскресенье, 06.11.2016, 22:11 |
Сообщение № 1046 | Тема: HPageBreaks не хочет считать страницы
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Потанцевать с бубном, впрочем как и всегда[vba]Код
Public Sub tesst() Dim ws As Worksheet, c& Set ws = Worksheets(1) c = ws.HPageBreaks.Count [A1048576] = 1 Debug.Print ws.HPageBreaks(c + 1).Location.Row [A1048576].Delete xlUp End Sub
[/vba]
Потанцевать с бубном, впрочем как и всегда[vba]Код
Public Sub tesst() Dim ws As Worksheet, c& Set ws = Worksheets(1) c = ws.HPageBreaks.Count [A1048576] = 1 Debug.Print ws.HPageBreaks(c + 1).Location.Row [A1048576].Delete xlUp End Sub
[/vba]krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Потанцевать с бубном, впрочем как и всегда[vba]Код
Public Sub tesst() Dim ws As Worksheet, c& Set ws = Worksheets(1) c = ws.HPageBreaks.Count [A1048576] = 1 Debug.Print ws.HPageBreaks(c + 1).Location.Row [A1048576].Delete xlUp End Sub
[/vba]Автор - krosav4ig Дата добавления - 06.11.2016 в 22:11
krosav4ig
Дата: Воскресенье, 06.11.2016, 21:46 |
Сообщение № 1047 | Тема: Как узнать, какие иконки в сортировке
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
с сортировкой почти то же самоеКод
SortField.SortOnValue.Index
выдает порядковый номер иконки (в прямом порядке, возможно нужно будет еще проверять [vba]Код
IconSetCondition.ReverseOrder
[/vba])
с сортировкой почти то же самоеКод
SortField.SortOnValue.Index
выдает порядковый номер иконки (в прямом порядке, возможно нужно будет еще проверять [vba]Код
IconSetCondition.ReverseOrder
[/vba]) krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение с сортировкой почти то же самоеКод
SortField.SortOnValue.Index
выдает порядковый номер иконки (в прямом порядке, возможно нужно будет еще проверять [vba]Код
IconSetCondition.ReverseOrder
[/vba]) Автор - krosav4ig Дата добавления - 06.11.2016 в 21:46
krosav4ig
Дата: Воскресенье, 06.11.2016, 21:04 |
Сообщение № 1048 | Тема: Как узнать, какие иконки в сортировке
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
[vba]Код
debug.? activesheet.autofilter.filters(НомерСтолбца).criteria1.index
[/vba]выдаст порядковый номер иконки из используемого набора [vba]Код
With Selection.FormatConditions For i = 1 To .Count If TypeOf .Item(i) Is IconSetCondition Then Debug.Print .Item(i).iconSet.ID Next End With
[/vba] выдаст id набора иконок
[vba]Код
debug.? activesheet.autofilter.filters(НомерСтолбца).criteria1.index
[/vba]выдаст порядковый номер иконки из используемого набора [vba]Код
With Selection.FormatConditions For i = 1 To .Count If TypeOf .Item(i) Is IconSetCondition Then Debug.Print .Item(i).iconSet.ID Next End With
[/vba] выдаст id набора иконокkrosav4ig
К сообщению приложен файл:
ICON.xlsm
(23.3 Kb)
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Воскресенье, 06.11.2016, 21:17
Ответить
Сообщение [vba]Код
debug.? activesheet.autofilter.filters(НомерСтолбца).criteria1.index
[/vba]выдаст порядковый номер иконки из используемого набора [vba]Код
With Selection.FormatConditions For i = 1 To .Count If TypeOf .Item(i) Is IconSetCondition Then Debug.Print .Item(i).iconSet.ID Next End With
[/vba] выдаст id набора иконокАвтор - krosav4ig Дата добавления - 06.11.2016 в 21:04
krosav4ig
Дата: Четверг, 03.11.2016, 21:53 |
Сообщение № 1049 | Тема: Формула расчета рабочего времени на складе (часы, минуты)
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Посмотрел на свою формулу, увидел, что бред написал, исправил в предыдущем своем посте вдруг сейчас правильно
Посмотрел на свою формулу, увидел, что бред написал, исправил в предыдущем своем посте вдруг сейчас правильно krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Посмотрел на свою формулу, увидел, что бред написал, исправил в предыдущем своем посте вдруг сейчас правильно Автор - krosav4ig Дата добавления - 03.11.2016 в 21:53
krosav4ig
Дата: Четверг, 03.11.2016, 18:02 |
Сообщение № 1050 | Тема: Формула расчета рабочего времени на складе (часы, минуты)
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
здравствуйте слепил монструозную формулу проверяйте, вдруг правильноКод
=МАКС(ЕСЛИ(ОТБР(E2)>ОТБР(C2);ВПР(ДЕНЬНЕД(C2;2);{1;20:6;18:7;0};2)/24;ТЕКСТ(E2;"чч:м"))+МИН(-ТЕКСТ(C2;"чч:м");-"9:");)*(ДЕНЬНЕД(C2)>1)+МАКС(СУММ(ЧИСТРАБДНИ.МЕЖД(C2+1;E2-1;{1;11;1};$J$2:$J$20)*{11;9;-9});)/24-(МИН(-ТЕКСТ(E2;"чч:мм");-"9:")+"9:")*(ДЕНЬНЕД(E2)>1)*(ОТБР(E2)>ОТБР(C2))
здравствуйте слепил монструозную формулу проверяйте, вдруг правильноКод
=МАКС(ЕСЛИ(ОТБР(E2)>ОТБР(C2);ВПР(ДЕНЬНЕД(C2;2);{1;20:6;18:7;0};2)/24;ТЕКСТ(E2;"чч:м"))+МИН(-ТЕКСТ(C2;"чч:м");-"9:");)*(ДЕНЬНЕД(C2)>1)+МАКС(СУММ(ЧИСТРАБДНИ.МЕЖД(C2+1;E2-1;{1;11;1};$J$2:$J$20)*{11;9;-9});)/24-(МИН(-ТЕКСТ(E2;"чч:мм");-"9:")+"9:")*(ДЕНЬНЕД(E2)>1)*(ОТБР(E2)>ОТБР(C2))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Пятница, 04.11.2016, 02:32
Ответить
Сообщение здравствуйте слепил монструозную формулу проверяйте, вдруг правильноКод
=МАКС(ЕСЛИ(ОТБР(E2)>ОТБР(C2);ВПР(ДЕНЬНЕД(C2;2);{1;20:6;18:7;0};2)/24;ТЕКСТ(E2;"чч:м"))+МИН(-ТЕКСТ(C2;"чч:м");-"9:");)*(ДЕНЬНЕД(C2)>1)+МАКС(СУММ(ЧИСТРАБДНИ.МЕЖД(C2+1;E2-1;{1;11;1};$J$2:$J$20)*{11;9;-9});)/24-(МИН(-ТЕКСТ(E2;"чч:мм");-"9:")+"9:")*(ДЕНЬНЕД(E2)>1)*(ОТБР(E2)>ОТБР(C2))
Автор - krosav4ig Дата добавления - 03.11.2016 в 18:02
krosav4ig
Дата: Среда, 02.11.2016, 19:58 |
Сообщение № 1051 | Тема: Подсчет уникальных значений по двум условиям
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
а у мну немассивная получиласьКод
=СУММПРОИЗВ(АГРЕГАТ(15;6;1/СЧЁТЕСЛИМН(A$2:A$29;A$2:A$29;B$2:B$29;B$2:B$29;C$2:C$29;(C$2:C$29=C2)*C2);СТРОКА($A$1:ИНДЕКС($A:$A;СЧЁТЕСЛИМН(B$2:B$29;B2;C$2:C$29;C2)))))
тока для Excel 2010+
а у мну немассивная получиласьКод
=СУММПРОИЗВ(АГРЕГАТ(15;6;1/СЧЁТЕСЛИМН(A$2:A$29;A$2:A$29;B$2:B$29;B$2:B$29;C$2:C$29;(C$2:C$29=C2)*C2);СТРОКА($A$1:ИНДЕКС($A:$A;СЧЁТЕСЛИМН(B$2:B$29;B2;C$2:C$29;C2)))))
тока для Excel 2010+ krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Среда, 02.11.2016, 19:59
Ответить
Сообщение а у мну немассивная получиласьКод
=СУММПРОИЗВ(АГРЕГАТ(15;6;1/СЧЁТЕСЛИМН(A$2:A$29;A$2:A$29;B$2:B$29;B$2:B$29;C$2:C$29;(C$2:C$29=C2)*C2);СТРОКА($A$1:ИНДЕКС($A:$A;СЧЁТЕСЛИМН(B$2:B$29;B2;C$2:C$29;C2)))))
тока для Excel 2010+ Автор - krosav4ig Дата добавления - 02.11.2016 в 19:58
krosav4ig
Дата: Понедельник, 31.10.2016, 21:52 |
Сообщение № 1052 | Тема: Как узнать кто работает с файлом с общим доступом?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
shared.xlsx - это что за книга
это имя открытой книги с общим доступом, для которой нужно получить список активных пользователей
shared.xlsx - это что за книга
это имя открытой книги с общим доступом, для которой нужно получить список активных пользователейkrosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Понедельник, 31.10.2016, 21:53
Ответить
Сообщение shared.xlsx - это что за книга
это имя открытой книги с общим доступом, для которой нужно получить список активных пользователейАвтор - krosav4ig Дата добавления - 31.10.2016 в 21:52
krosav4ig
Дата: Понедельник, 31.10.2016, 20:55 |
Сообщение № 1053 | Тема: Выполнение макроса после изменения листа
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
упс исправил
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение упс исправил Автор - krosav4ig Дата добавления - 31.10.2016 в 20:55
krosav4ig
Дата: Понедельник, 31.10.2016, 20:04 |
Сообщение № 1054 | Тема: Как узнать кто работает с файлом с общим доступом?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте наверно как-то так [vba]Код
Sub dd() Dim wb As Workbook, uSt(), i& Set wb = Application.Workbooks("shared.xlsx") uSt = wb.UserStatus If UBound(uSt) < 2 Then Exit Sub For i = 1 To UBound(uSt) If uSt(i, 1) <> Application.UserName Then Debug.Print "пользователь " & uSt(i, 1) & " открыл книгу " & Format(uSt(i, 2), "dd.MM.yyyy hh:mm") End If Next End Sub
[/vba]
Здравствуйте наверно как-то так [vba]Код
Sub dd() Dim wb As Workbook, uSt(), i& Set wb = Application.Workbooks("shared.xlsx") uSt = wb.UserStatus If UBound(uSt) < 2 Then Exit Sub For i = 1 To UBound(uSt) If uSt(i, 1) <> Application.UserName Then Debug.Print "пользователь " & uSt(i, 1) & " открыл книгу " & Format(uSt(i, 2), "dd.MM.yyyy hh:mm") End If Next End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Здравствуйте наверно как-то так [vba]Код
Sub dd() Dim wb As Workbook, uSt(), i& Set wb = Application.Workbooks("shared.xlsx") uSt = wb.UserStatus If UBound(uSt) < 2 Then Exit Sub For i = 1 To UBound(uSt) If uSt(i, 1) <> Application.UserName Then Debug.Print "пользователь " & uSt(i, 1) & " открыл книгу " & Format(uSt(i, 2), "dd.MM.yyyy hh:mm") End If Next End Sub
[/vba] Автор - krosav4ig Дата добавления - 31.10.2016 в 20:04
krosav4ig
Дата: Понедельник, 31.10.2016, 19:32 |
Сообщение № 1055 | Тема: Выполнение макроса после изменения листа
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
если правильно понял... в модуль ЭтаКнига [vba]Код
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) Dim Dic As Object, K With Application: .ScreenUpdating = 0: .EnableEvents = 0 With Sheets("Служебная записка") Set Dic = CreateObject("Scripting.Dictionary") Dic("начальнику ОРСА Сиротскому М.С.,") = "38:39" Dic("начальнику ОРПО Чекалину Л.В.,") = "42:43" Dic("начальнику КТО Лужецкому В.Н.,") = "46:47" Dic("начальнику ТО Смирнову М.Н.,") = "50:51" Dic("начальнику ЭТО Кондратьеву Л.В.,") = "54:55" Dic("начальнику ПНРиТО Хлынину М.В.,") = "58:59" .Range(Join(Dic.Items, ",")).EntireRow.Hidden = True For Each K In Dic.keys Select Case K Case .[D17], .[D18], .[D19], .[Q17], .[Q18], .[Q19] .Rows(Dic(K)).Hidden = False End Select Next Set Dic = Nothing End With .ScreenUpdating = 1: .EnableEvents = 1: End With End Sub
[/vba]
если правильно понял... в модуль ЭтаКнига [vba]Код
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) Dim Dic As Object, K With Application: .ScreenUpdating = 0: .EnableEvents = 0 With Sheets("Служебная записка") Set Dic = CreateObject("Scripting.Dictionary") Dic("начальнику ОРСА Сиротскому М.С.,") = "38:39" Dic("начальнику ОРПО Чекалину Л.В.,") = "42:43" Dic("начальнику КТО Лужецкому В.Н.,") = "46:47" Dic("начальнику ТО Смирнову М.Н.,") = "50:51" Dic("начальнику ЭТО Кондратьеву Л.В.,") = "54:55" Dic("начальнику ПНРиТО Хлынину М.В.,") = "58:59" .Range(Join(Dic.Items, ",")).EntireRow.Hidden = True For Each K In Dic.keys Select Case K Case .[D17], .[D18], .[D19], .[Q17], .[Q18], .[Q19] .Rows(Dic(K)).Hidden = False End Select Next Set Dic = Nothing End With .ScreenUpdating = 1: .EnableEvents = 1: End With End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Понедельник, 31.10.2016, 20:54
Ответить
Сообщение если правильно понял... в модуль ЭтаКнига [vba]Код
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) Dim Dic As Object, K With Application: .ScreenUpdating = 0: .EnableEvents = 0 With Sheets("Служебная записка") Set Dic = CreateObject("Scripting.Dictionary") Dic("начальнику ОРСА Сиротскому М.С.,") = "38:39" Dic("начальнику ОРПО Чекалину Л.В.,") = "42:43" Dic("начальнику КТО Лужецкому В.Н.,") = "46:47" Dic("начальнику ТО Смирнову М.Н.,") = "50:51" Dic("начальнику ЭТО Кондратьеву Л.В.,") = "54:55" Dic("начальнику ПНРиТО Хлынину М.В.,") = "58:59" .Range(Join(Dic.Items, ",")).EntireRow.Hidden = True For Each K In Dic.keys Select Case K Case .[D17], .[D18], .[D19], .[Q17], .[Q18], .[Q19] .Rows(Dic(K)).Hidden = False End Select Next Set Dic = Nothing End With .ScreenUpdating = 1: .EnableEvents = 1: End With End Sub
[/vba] Автор - krosav4ig Дата добавления - 31.10.2016 в 19:32
krosav4ig
Дата: Воскресенье, 30.10.2016, 18:39 |
Сообщение № 1056 | Тема: Как табелировать сотрудников автоматичкски
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
как работает функция ЕСЛИОШИБКА() в xls
AlexM , Нормально так себе работает, если xls открыт в excel 2007+
как работает функция ЕСЛИОШИБКА() в xls
AlexM , Нормально так себе работает, если xls открыт в excel 2007+krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение как работает функция ЕСЛИОШИБКА() в xls
AlexM , Нормально так себе работает, если xls открыт в excel 2007+Автор - krosav4ig Дата добавления - 30.10.2016 в 18:39
krosav4ig
Дата: Суббота, 29.10.2016, 21:58 |
Сообщение № 1057 | Тема: Удаление содержимого яч и умножение на число из содержимого
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
это злозаменяет точки на запятые
а это ужо я немного накосячил, в строке[vba]Код
.Formula = Parent.Substitute(arr, ".", Parent.DecimalSeparator)
[/vba] сделал замену на десятичный резделитель [vba]Код
Sub dd() 10 On Error GoTo Er Dim arr As Variant, arr1 As Variant, i&, s$ 20 With [A1].CurrentRegion 30 With Intersect(.Columns("D").Offset(5), .EntireRow) 40 arr = .Value: arr1 = .Offset(, 1).Formula 50 With CreateObject("vbscript.regexp") 60 .Pattern = "([0-9]+)?(\s?\S+).*" 70 For i = 1 To UBound(arr) 80 If .test(arr(i, 1)) Then 90 s = "=trim(""$2 ""& 0" & arr1(i, 1) & "*text(0$1,""0;;1""))" 100 arr(i, 1) = Evaluate(.Replace(arr(i, 1), s)) 110 Else: arr(i, 1) = " " 120 End If 130 Next 140 End With 150 Parent.ScreenUpdating = False: Parent.DisplayAlerts = False 160 .Value = Parent.ReplaceB(arr, Parent.Search(" ", arr), 999, "") 170 .Offset(, 1).Formula = Parent.ReplaceB(arr, 1, Parent.Search(" ", arr), "") 180 Parent.DisplayAlerts = True: Parent.ScreenUpdating = True 190 End With 200 End With 210 Exit Sub Er: 220 Parent.DisplayAlerts = True: Parent.ScreenUpdating = True 230 With Parent.VBE.MainWindow.LinkedWindows 240 .Add Parent.VBE.Windows("Immediate") 250 .Add Parent.VBE.Windows("Locals") 260 End With 'Application.VBE.Windows("Immediate").Visible = True 'Application.VBE.Windows("Locals").Visible = True 270 Debug.Print "Ошибка " & Err.Number & " (" & Err.Description & ") на строке " & Erl 280 Stop 290 Err.Clear 300 Resume Next End Sub
[/vba]
это злозаменяет точки на запятые
а это ужо я немного накосячил, в строке[vba]Код
.Formula = Parent.Substitute(arr, ".", Parent.DecimalSeparator)
[/vba] сделал замену на десятичный резделитель [vba]Код
Sub dd() 10 On Error GoTo Er Dim arr As Variant, arr1 As Variant, i&, s$ 20 With [A1].CurrentRegion 30 With Intersect(.Columns("D").Offset(5), .EntireRow) 40 arr = .Value: arr1 = .Offset(, 1).Formula 50 With CreateObject("vbscript.regexp") 60 .Pattern = "([0-9]+)?(\s?\S+).*" 70 For i = 1 To UBound(arr) 80 If .test(arr(i, 1)) Then 90 s = "=trim(""$2 ""& 0" & arr1(i, 1) & "*text(0$1,""0;;1""))" 100 arr(i, 1) = Evaluate(.Replace(arr(i, 1), s)) 110 Else: arr(i, 1) = " " 120 End If 130 Next 140 End With 150 Parent.ScreenUpdating = False: Parent.DisplayAlerts = False 160 .Value = Parent.ReplaceB(arr, Parent.Search(" ", arr), 999, "") 170 .Offset(, 1).Formula = Parent.ReplaceB(arr, 1, Parent.Search(" ", arr), "") 180 Parent.DisplayAlerts = True: Parent.ScreenUpdating = True 190 End With 200 End With 210 Exit Sub Er: 220 Parent.DisplayAlerts = True: Parent.ScreenUpdating = True 230 With Parent.VBE.MainWindow.LinkedWindows 240 .Add Parent.VBE.Windows("Immediate") 250 .Add Parent.VBE.Windows("Locals") 260 End With 'Application.VBE.Windows("Immediate").Visible = True 'Application.VBE.Windows("Locals").Visible = True 270 Debug.Print "Ошибка " & Err.Number & " (" & Err.Description & ") на строке " & Erl 280 Stop 290 Err.Clear 300 Resume Next End Sub
[/vba]krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 29.10.2016, 22:04
Ответить
Сообщение это злозаменяет точки на запятые
а это ужо я немного накосячил, в строке[vba]Код
.Formula = Parent.Substitute(arr, ".", Parent.DecimalSeparator)
[/vba] сделал замену на десятичный резделитель [vba]Код
Sub dd() 10 On Error GoTo Er Dim arr As Variant, arr1 As Variant, i&, s$ 20 With [A1].CurrentRegion 30 With Intersect(.Columns("D").Offset(5), .EntireRow) 40 arr = .Value: arr1 = .Offset(, 1).Formula 50 With CreateObject("vbscript.regexp") 60 .Pattern = "([0-9]+)?(\s?\S+).*" 70 For i = 1 To UBound(arr) 80 If .test(arr(i, 1)) Then 90 s = "=trim(""$2 ""& 0" & arr1(i, 1) & "*text(0$1,""0;;1""))" 100 arr(i, 1) = Evaluate(.Replace(arr(i, 1), s)) 110 Else: arr(i, 1) = " " 120 End If 130 Next 140 End With 150 Parent.ScreenUpdating = False: Parent.DisplayAlerts = False 160 .Value = Parent.ReplaceB(arr, Parent.Search(" ", arr), 999, "") 170 .Offset(, 1).Formula = Parent.ReplaceB(arr, 1, Parent.Search(" ", arr), "") 180 Parent.DisplayAlerts = True: Parent.ScreenUpdating = True 190 End With 200 End With 210 Exit Sub Er: 220 Parent.DisplayAlerts = True: Parent.ScreenUpdating = True 230 With Parent.VBE.MainWindow.LinkedWindows 240 .Add Parent.VBE.Windows("Immediate") 250 .Add Parent.VBE.Windows("Locals") 260 End With 'Application.VBE.Windows("Immediate").Visible = True 'Application.VBE.Windows("Locals").Visible = True 270 Debug.Print "Ошибка " & Err.Number & " (" & Err.Description & ") на строке " & Erl 280 Stop 290 Err.Clear 300 Resume Next End Sub
[/vba]Автор - krosav4ig Дата добавления - 29.10.2016 в 21:58
krosav4ig
Дата: Суббота, 29.10.2016, 15:54 |
Сообщение № 1058 | Тема: Можно ли в элемент надпись ввести несколько строк
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
В надписях работает Shift+Enter (не на numpad) если макросом, перевод строки это chr(11)
В надписях работает Shift+Enter (не на numpad) если макросом, перевод строки это chr(11) krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение В надписях работает Shift+Enter (не на numpad) если макросом, перевод строки это chr(11) Автор - krosav4ig Дата добавления - 29.10.2016 в 15:54
krosav4ig
Дата: Суббота, 29.10.2016, 04:56 |
Сообщение № 1059 | Тема: Указатель мыши в точку координат курсора
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
что конкретно понимаете под этим словом? GetCursorPos определяет XY координаты указателя мыши относительно верхнего левого угла рабочего стола(экрана)
что конкретно понимаете под этим словом? GetCursorPos определяет XY координаты указателя мыши относительно верхнего левого угла рабочего стола(экрана)krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 29.10.2016, 04:59
Ответить
Сообщение что конкретно понимаете под этим словом? GetCursorPos определяет XY координаты указателя мыши относительно верхнего левого угла рабочего стола(экрана)Автор - krosav4ig Дата добавления - 29.10.2016 в 04:56
krosav4ig
Дата: Суббота, 29.10.2016, 04:46 |
Сообщение № 1060 | Тема: Текст в Base64 изображение
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте ну даж ненаю... с расшифровкой и записью в файл и получением base64 все просто [vba]Код
Sub Base64ToFile(Hash$, FilePath$) 'расшифровка base64 и запись в файл Dim ByteArr() As Byte With CreateObject("MSXML2.DOMDocument").createElement("b64") .DataType = "bin.base64" .Text = Hash ByteArr = .nodeTypedValue End With Open FilePath For Binary Access Write As #1 Put #1, 1, ByteArr Close #1 End Sub
[/vba] [vba]Код
Function Base64FromFile$(FilePath$) 'получение base64 файла Dim ByteArr() As Byte Open FilePath For Binary Access Read As #1 ReDim ByteArr(LOF(1)) Get #1, 1, ByteArr Close #1 With CreateObject("MSXML2.DOMDocument").createElement("b64") .DataType = "bin.base64" .nodeTypedValue = ByteArr Base64FromFile = .Text End With End Function
[/vba] а вот тут что-то непонятнопереводить текст в изображение
Здравствуйте ну даж ненаю... с расшифровкой и записью в файл и получением base64 все просто [vba]Код
Sub Base64ToFile(Hash$, FilePath$) 'расшифровка base64 и запись в файл Dim ByteArr() As Byte With CreateObject("MSXML2.DOMDocument").createElement("b64") .DataType = "bin.base64" .Text = Hash ByteArr = .nodeTypedValue End With Open FilePath For Binary Access Write As #1 Put #1, 1, ByteArr Close #1 End Sub
[/vba] [vba]Код
Function Base64FromFile$(FilePath$) 'получение base64 файла Dim ByteArr() As Byte Open FilePath For Binary Access Read As #1 ReDim ByteArr(LOF(1)) Get #1, 1, ByteArr Close #1 With CreateObject("MSXML2.DOMDocument").createElement("b64") .DataType = "bin.base64" .nodeTypedValue = ByteArr Base64FromFile = .Text End With End Function
[/vba] а вот тут что-то непонятнопереводить текст в изображение
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 29.10.2016, 23:38
Ответить
Сообщение Здравствуйте ну даж ненаю... с расшифровкой и записью в файл и получением base64 все просто [vba]Код
Sub Base64ToFile(Hash$, FilePath$) 'расшифровка base64 и запись в файл Dim ByteArr() As Byte With CreateObject("MSXML2.DOMDocument").createElement("b64") .DataType = "bin.base64" .Text = Hash ByteArr = .nodeTypedValue End With Open FilePath For Binary Access Write As #1 Put #1, 1, ByteArr Close #1 End Sub
[/vba] [vba]Код
Function Base64FromFile$(FilePath$) 'получение base64 файла Dim ByteArr() As Byte Open FilePath For Binary Access Read As #1 ReDim ByteArr(LOF(1)) Get #1, 1, ByteArr Close #1 With CreateObject("MSXML2.DOMDocument").createElement("b64") .DataType = "bin.base64" .nodeTypedValue = ByteArr Base64FromFile = .Text End With End Function
[/vba] а вот тут что-то непонятнопереводить текст в изображение
Автор - krosav4ig Дата добавления - 29.10.2016 в 04:46