Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Записи участника (krosav4ig) - Мир MS Excel

Результаты поиска
krosav4ig Дата: Воскресенье, 08.02.2015, 18:54 | Сообщение № 541 | Тема: Отобразить столбцы соответственно отфильтрованным строкам.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Вдруг правильно?
[vba]
Код
Sub qwe()
      Dim r As Range, c As Range
      Set r = [E:E].SpecialCells(2, 23).SpecialCells(12)
      Application.ScreenUpdating = 0
      [I:P].EntireColumn.Hidden = True
      For Each c In [I2:P2]
          If Not r.Find(c, , xlValues, xlWhole) Is Nothing Then c.EntireColumn.Hidden = 0
      Next
End Sub
[/vba]
К сообщению приложен файл: 2098343.xlsm (24.4 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 08.02.2015, 21:18
 
Ответить
СообщениеВдруг правильно?
[vba]
Код
Sub qwe()
      Dim r As Range, c As Range
      Set r = [E:E].SpecialCells(2, 23).SpecialCells(12)
      Application.ScreenUpdating = 0
      [I:P].EntireColumn.Hidden = True
      For Each c In [I2:P2]
          If Not r.Find(c, , xlValues, xlWhole) Is Nothing Then c.EntireColumn.Hidden = 0
      Next
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 08.02.2015 в 18:54
krosav4ig Дата: Воскресенье, 08.02.2015, 19:44 | Сообщение № 542 | Тема: Открытие excel с расширением xlsm в ОС Android
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
открыть-то можно, но макросы работать не будут


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеоткрыть-то можно, но макросы работать не будут

Автор - krosav4ig
Дата добавления - 08.02.2015 в 19:44
krosav4ig Дата: Воскресенье, 08.02.2015, 20:49 | Сообщение № 543 | Тема: Отобразить столбцы соответственно отфильтрованным строкам.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Leanna, 23 это сумма xlErrors (16), xlLogical (4), xlNumbers (1), xlTextValues(2), т.е. если нужны только числа и текст то будет 3, цикл с r.Areas я просто пропустил, хотел его убрать, сначала чего-то в голову ударило, потом одумался, исправил свой пост


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 08.02.2015, 20:50
 
Ответить
СообщениеLeanna, 23 это сумма xlErrors (16), xlLogical (4), xlNumbers (1), xlTextValues(2), т.е. если нужны только числа и текст то будет 3, цикл с r.Areas я просто пропустил, хотел его убрать, сначала чего-то в голову ударило, потом одумался, исправил свой пост

Автор - krosav4ig
Дата добавления - 08.02.2015 в 20:49
krosav4ig Дата: Воскресенье, 08.02.2015, 21:29 | Сообщение № 544 | Тема: Отобразить столбцы соответственно отфильтрованным строкам.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
а вообще для читабельного кода ИМХО лучше вместо 23 писать [vba]
Код
xlNumbers or xlTextValues or xlLogical or xlErrors
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 08.02.2015, 21:30
 
Ответить
Сообщениеа вообще для читабельного кода ИМХО лучше вместо 23 писать [vba]
Код
xlNumbers or xlTextValues or xlLogical or xlErrors
[/vba]

Автор - krosav4ig
Дата добавления - 08.02.2015 в 21:29
krosav4ig Дата: Понедельник, 09.02.2015, 00:52 | Сообщение № 545 | Тема: Как размножаются [s]ёжики[/s] формулы
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
[offtop]это фсе Ктулху (;,;)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение[offtop]это фсе Ктулху (;,;)

Автор - krosav4ig
Дата добавления - 09.02.2015 в 00:52
krosav4ig Дата: Понедельник, 09.02.2015, 00:53 | Сообщение № 546 | Тема: Как задать формулу в зависимости от цвет ячейки
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
только UDF
...
или макрос
а как же xlm? :p
К сообщению приложен файл: -3-.xls (31.0 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение
только UDF
...
или макрос
а как же xlm? :p

Автор - krosav4ig
Дата добавления - 09.02.2015 в 00:53
krosav4ig Дата: Понедельник, 09.02.2015, 12:40 | Сообщение № 547 | Тема: Перевед из одного формата в другой (даты)
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
у меня по-другому получилось, массивная формула
Код
=ТЕКСТ(--(ПСТР(A2;ПОИСК(" ??,";A2)+1;2)&"."&ПОИСКПОЗ(;-ПОИСК(ТЕКСТ(СТРОКА($1:$12)*30;"[$-F1]МММ");A2))&"."&ПРАВБ(A2;13));"ДД.ММ.ГГГ ч:мм")
К сообщению приложен файл: 5934198.xlsm (16.2 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеу меня по-другому получилось, массивная формула
Код
=ТЕКСТ(--(ПСТР(A2;ПОИСК(" ??,";A2)+1;2)&"."&ПОИСКПОЗ(;-ПОИСК(ТЕКСТ(СТРОКА($1:$12)*30;"[$-F1]МММ");A2))&"."&ПРАВБ(A2;13));"ДД.ММ.ГГГ ч:мм")

Автор - krosav4ig
Дата добавления - 09.02.2015 в 12:40
krosav4ig Дата: Понедельник, 09.02.2015, 13:58 | Сообщение № 548 | Тема: сумма чисел из суммы результата
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
монстрик какой-то получился
это заразно ;)
Код
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСК("*"&ПОВТОР((СТРОКА($1:$10)-1)&"*";СТОЛБЕЦ(СМЕЩ($A:$A;;;;ДЛСТР(H4))));H4))*(СТРОКА($1:$10)-1))


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение
монстрик какой-то получился
это заразно ;)
Код
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСК("*"&ПОВТОР((СТРОКА($1:$10)-1)&"*";СТОЛБЕЦ(СМЕЩ($A:$A;;;;ДЛСТР(H4))));H4))*(СТРОКА($1:$10)-1))

Автор - krosav4ig
Дата добавления - 09.02.2015 в 13:58
krosav4ig Дата: Понедельник, 09.02.2015, 16:15 | Сообщение № 549 | Тема: Как задать формулу в зависимости от цвет ячейки
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
vadimn, это макрофункция, если интересно, то можно тут почитать, тут скачать документацию и пощупать


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеvadimn, это макрофункция, если интересно, то можно тут почитать, тут скачать документацию и пощупать

Автор - krosav4ig
Дата добавления - 09.02.2015 в 16:15
krosav4ig Дата: Вторник, 10.02.2015, 13:48 | Сообщение № 550 | Тема: Поиск соответствующих значений и суммирование.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
так понятнее?
[vba]
Код
Option Explicit
Function FilenamesCollection(ByVal FolderPath As String, Optional ByVal Mask As String = "", _
                    Optional ByVal SearchDeep As Long = 999) As Collection
     ' Получает в качестве параметра путь к папке FolderPath,
     ' маску имени искомых файлов Mask (будут отобраны только файлы с такой маской/расширением)
     ' и глубину поиска SearchDeep в подпапках (если SearchDeep=1, то подпапки не просматриваются).
     ' Возвращает коллекцию, содержащую полные пути найденных файлов
     ' (применяется рекурсивный вызов процедуры GetAllFileNamesUsingFSO)
      
     Dim FSO As Object
     Set FilenamesCollection = New Collection    ' создаём пустую коллекцию
     Set FSO = CreateObject("Scripting.FileSystemObject")    ' создаём экземпляр FileSystemObject
     GetAllFileNamesUsingFSO FolderPath, Mask, FSO, FilenamesCollection, SearchDeep ' поиск
     Set FSO = Nothing: Application.StatusBar = False    ' очистка строки состояния Excel
End Function

Function GetAllFileNamesUsingFSO(ByVal FolderPath As String, ByVal Mask As String, ByRef FSO, _
                    ByRef FileNamesColl As Collection, ByVal SearchDeep As Long)
     ' перебирает все файлы и подпапки в папке FolderPath, используя объект FSO
     ' перебор папок осуществляется в том случае, если SearchDeep > 1
     ' добавляет пути найденных файлов в коллекцию FileNamesColl
     Dim curfold As Object, fil As Object, sfol As Object
     On Error Resume Next: Set curfold = FSO.GetFolder(FolderPath)
     If Not curfold Is Nothing Then    ' если удалось получить доступ к папке
         ' раскомментируйте эту строку для вывода пути к просматриваемой
         ' в текущий момент папке в строку состояния Excel
         ' Application.StatusBar = "Поиск в папке: " & FolderPath
         For Each fil In curfold.Files    ' перебираем все файлы в папке FolderPath
             If fil.Name Like "*" & Mask Then FileNamesColl.Add fil '.path
         Next
         SearchDeep = SearchDeep - 1    ' уменьшаем глубину поиска в подпапках
         If SearchDeep Then    ' если надо искать глубже
             For Each sfol In curfold.SubFolders    ' перебираем все подпапки в папке FolderPath
             GetAllFileNamesUsingFSO sfol.path, Mask, FSO, FileNamesColl, SearchDeep
             Next
         End If
         Set fil = Nothing: Set curfold = Nothing    ' очищаем переменные
     End If
End Function

Sub sdf()
     Dim con: Set con = CreateObject("ADODB.Connection") 'подключение
     Dim RS: Set RS = CreateObject("ADODB.Recordset") 'рекордсет
     Dim ObjFile As Object
     Dim FilePath$, path$, ConnectionString$
      
     'Строка подключения
     ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.path & ";Extended Properties=dBASE IV"
     'ConnectionString = "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & ThisWorkbook.path
      
     'открываем подключение
     con.Open ConnectionString$
      
     'создаем пустую временную базу данных dbf в папке с этим файлом
     con.Execute "create table atable (name Text(50), cnt long)"
      
     'перебираем найденные файлы dbf в папке с этим файлом и дочерних папках 1го уровня
     'если нужно искать в другой папке, то ее путь нужно указать вместо ThisWorkbook.path
     'например FilenamesCollection("C:\DBase\", ".dbf", 2)
     For Each ObjFile In FilenamesCollection(ThisWorkbook.path, ".dbf", 2)
         FilePath = ObjFile.path: path$ = Replace(FilePath, ObjFile.Name, "")
          
         'добавляем из каждого найденного файла группированные записи по первому полю в созданную временную базу
         con.Execute "INSERT INTO atable SELECT Field1 as name, sum(Field2) as cnt From " & ObjFile.Name & " IN '" & path & "' [Dbase IV;DATABASE=" & FilePath & "] group by Field1"
     Next
      
     'помещаем в рекордсет группированные записи из временной базы
     RS.Open "select name, sum(cnt) as sumcnt from atable group by name", con, 3, 3
      
     'выгружаем данные из рекордсета на лист
     [A1].CopyFromRecordset RS
      
     'закрываем рекордсет
     RS.Close
      
     'удаляем временную базу
     con.Execute "drop table atable"
      
     'закрвыаем подключение
     con.Close
     Set con = Nothing: Set RS = Nothing
End Sub
[/vba]

[p.s.]функции FilenamesCollection и GetAllFileNamesUsingFSO взяты тут: Получение списка файлов в папке и подпапках средствами VBA[/p.s.]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениетак понятнее?
[vba]
Код
Option Explicit
Function FilenamesCollection(ByVal FolderPath As String, Optional ByVal Mask As String = "", _
                    Optional ByVal SearchDeep As Long = 999) As Collection
     ' Получает в качестве параметра путь к папке FolderPath,
     ' маску имени искомых файлов Mask (будут отобраны только файлы с такой маской/расширением)
     ' и глубину поиска SearchDeep в подпапках (если SearchDeep=1, то подпапки не просматриваются).
     ' Возвращает коллекцию, содержащую полные пути найденных файлов
     ' (применяется рекурсивный вызов процедуры GetAllFileNamesUsingFSO)
      
     Dim FSO As Object
     Set FilenamesCollection = New Collection    ' создаём пустую коллекцию
     Set FSO = CreateObject("Scripting.FileSystemObject")    ' создаём экземпляр FileSystemObject
     GetAllFileNamesUsingFSO FolderPath, Mask, FSO, FilenamesCollection, SearchDeep ' поиск
     Set FSO = Nothing: Application.StatusBar = False    ' очистка строки состояния Excel
End Function

Function GetAllFileNamesUsingFSO(ByVal FolderPath As String, ByVal Mask As String, ByRef FSO, _
                    ByRef FileNamesColl As Collection, ByVal SearchDeep As Long)
     ' перебирает все файлы и подпапки в папке FolderPath, используя объект FSO
     ' перебор папок осуществляется в том случае, если SearchDeep > 1
     ' добавляет пути найденных файлов в коллекцию FileNamesColl
     Dim curfold As Object, fil As Object, sfol As Object
     On Error Resume Next: Set curfold = FSO.GetFolder(FolderPath)
     If Not curfold Is Nothing Then    ' если удалось получить доступ к папке
         ' раскомментируйте эту строку для вывода пути к просматриваемой
         ' в текущий момент папке в строку состояния Excel
         ' Application.StatusBar = "Поиск в папке: " & FolderPath
         For Each fil In curfold.Files    ' перебираем все файлы в папке FolderPath
             If fil.Name Like "*" & Mask Then FileNamesColl.Add fil '.path
         Next
         SearchDeep = SearchDeep - 1    ' уменьшаем глубину поиска в подпапках
         If SearchDeep Then    ' если надо искать глубже
             For Each sfol In curfold.SubFolders    ' перебираем все подпапки в папке FolderPath
             GetAllFileNamesUsingFSO sfol.path, Mask, FSO, FileNamesColl, SearchDeep
             Next
         End If
         Set fil = Nothing: Set curfold = Nothing    ' очищаем переменные
     End If
End Function

Sub sdf()
     Dim con: Set con = CreateObject("ADODB.Connection") 'подключение
     Dim RS: Set RS = CreateObject("ADODB.Recordset") 'рекордсет
     Dim ObjFile As Object
     Dim FilePath$, path$, ConnectionString$
      
     'Строка подключения
     ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.path & ";Extended Properties=dBASE IV"
     'ConnectionString = "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & ThisWorkbook.path
      
     'открываем подключение
     con.Open ConnectionString$
      
     'создаем пустую временную базу данных dbf в папке с этим файлом
     con.Execute "create table atable (name Text(50), cnt long)"
      
     'перебираем найденные файлы dbf в папке с этим файлом и дочерних папках 1го уровня
     'если нужно искать в другой папке, то ее путь нужно указать вместо ThisWorkbook.path
     'например FilenamesCollection("C:\DBase\", ".dbf", 2)
     For Each ObjFile In FilenamesCollection(ThisWorkbook.path, ".dbf", 2)
         FilePath = ObjFile.path: path$ = Replace(FilePath, ObjFile.Name, "")
          
         'добавляем из каждого найденного файла группированные записи по первому полю в созданную временную базу
         con.Execute "INSERT INTO atable SELECT Field1 as name, sum(Field2) as cnt From " & ObjFile.Name & " IN '" & path & "' [Dbase IV;DATABASE=" & FilePath & "] group by Field1"
     Next
      
     'помещаем в рекордсет группированные записи из временной базы
     RS.Open "select name, sum(cnt) as sumcnt from atable group by name", con, 3, 3
      
     'выгружаем данные из рекордсета на лист
     [A1].CopyFromRecordset RS
      
     'закрываем рекордсет
     RS.Close
      
     'удаляем временную базу
     con.Execute "drop table atable"
      
     'закрвыаем подключение
     con.Close
     Set con = Nothing: Set RS = Nothing
End Sub
[/vba]

[p.s.]функции FilenamesCollection и GetAllFileNamesUsingFSO взяты тут: Получение списка файлов в папке и подпапках средствами VBA[/p.s.]

Автор - krosav4ig
Дата добавления - 10.02.2015 в 13:48
krosav4ig Дата: Среда, 11.02.2015, 12:52 | Сообщение № 551 | Тема: Назначить Значение чекбокса в цикле
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
а если чекбоксы не activex, а элементы формы, то
[vba]
Код
Sub asd()
     Dim cbox As CheckBox
     For Each cbox In Worksheets("Лист1").CheckBoxes
         cbox.Value = True
     Next
End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеа если чекбоксы не activex, а элементы формы, то
[vba]
Код
Sub asd()
     Dim cbox As CheckBox
     For Each cbox In Worksheets("Лист1").CheckBoxes
         cbox.Value = True
     Next
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 11.02.2015 в 12:52
krosav4ig Дата: Среда, 11.02.2015, 13:55 | Сообщение № 552 | Тема: Назначить Значение чекбокса в цикле
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
есть для таких случаев Controls. На листе оно не работает(

но можно потанцевать с бубном и все получится)
суем на лист Activex обьект MS forms 2.0 frame, в него нужные контролы, в потом в модуле листа[vba]
Код
     Dim ctrl As MSForms.Control
     For Each ctrl In Me.OLEObjects("frame1").Object.Controls
         If TypeOf ctrl Is MSForms.CheckBox Then ctrl.Value = True
     Next
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение
есть для таких случаев Controls. На листе оно не работает(

но можно потанцевать с бубном и все получится)
суем на лист Activex обьект MS forms 2.0 frame, в него нужные контролы, в потом в модуле листа[vba]
Код
     Dim ctrl As MSForms.Control
     For Each ctrl In Me.OLEObjects("frame1").Object.Controls
         If TypeOf ctrl Is MSForms.CheckBox Then ctrl.Value = True
     Next
[/vba]

Автор - krosav4ig
Дата добавления - 11.02.2015 в 13:55
krosav4ig Дата: Среда, 11.02.2015, 15:44 | Сообщение № 553 | Тема: Построение графика без учета "пустых" значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
...
К сообщению приложен файл: 9576820.xlsx (25.4 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение...

Автор - krosav4ig
Дата добавления - 11.02.2015 в 15:44
krosav4ig Дата: Среда, 11.02.2015, 16:11 | Сообщение № 554 | Тема: Формула больше - ровняется несколько значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
еще вариант
Код
=K5*(1-ПРОСМОТР(K5-1;{0;2;3;4;5;6;7;8;9;10}/1%%;{0;5;6;7;8;9;10;11;12;13})%)


upd.
исправил ошибку в формуле, чето меня уже клинит %)
upd2.
%)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Среда, 11.02.2015, 16:56
 
Ответить
Сообщениееще вариант
Код
=K5*(1-ПРОСМОТР(K5-1;{0;2;3;4;5;6;7;8;9;10}/1%%;{0;5;6;7;8;9;10;11;12;13})%)


upd.
исправил ошибку в формуле, чето меня уже клинит %)
upd2.
%)

Автор - krosav4ig
Дата добавления - 11.02.2015 в 16:11
krosav4ig Дата: Четверг, 12.02.2015, 12:39 | Сообщение № 555 | Тема: Макрос группировки ошибки в написании
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
в файл добавил автотаблицу и именованный диапазон
[vba]
Код
Sub qwe()
     Dim cn: Set cn = CreateObject("ADODB.Connection")
     Dim rs: Set rs = CreateObject("ADODB.Recordset")
     Dim prop: Set prop = cn.Properties
     cn.Provider = "Microsoft.Jet.OLEDB.4.0"
     prop("data source") = ThisWorkbook.FullName
     prop("Extended Properties") = "Excel 8.0;HDR=No;"
     cn.Open
     rs.Open "select f9, sum(f12), sum(F13)  from [за месяц$" & [данные].Address(0, 0) & "] group by F9", cn, 3, 3
     With Sheets("за месяц по нн").ListObjects("Таблица1")
         On Error Resume Next
         .DataBodyRange.Delete
         .ShowTotals = False
         .Range.Cells(2, 2).CopyFromRecordset rs
         .ShowTotals = True
     End With
     rs.Close: cn.Close: Set cn = Nothing: Set rs = Nothing
End Sub
[/vba]
К сообщению приложен файл: -1-.xls (76.5 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Четверг, 12.02.2015, 12:42
 
Ответить
Сообщениев файл добавил автотаблицу и именованный диапазон
[vba]
Код
Sub qwe()
     Dim cn: Set cn = CreateObject("ADODB.Connection")
     Dim rs: Set rs = CreateObject("ADODB.Recordset")
     Dim prop: Set prop = cn.Properties
     cn.Provider = "Microsoft.Jet.OLEDB.4.0"
     prop("data source") = ThisWorkbook.FullName
     prop("Extended Properties") = "Excel 8.0;HDR=No;"
     cn.Open
     rs.Open "select f9, sum(f12), sum(F13)  from [за месяц$" & [данные].Address(0, 0) & "] group by F9", cn, 3, 3
     With Sheets("за месяц по нн").ListObjects("Таблица1")
         On Error Resume Next
         .DataBodyRange.Delete
         .ShowTotals = False
         .Range.Cells(2, 2).CopyFromRecordset rs
         .ShowTotals = True
     End With
     rs.Close: cn.Close: Set cn = Nothing: Set rs = Nothing
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 12.02.2015 в 12:39
krosav4ig Дата: Пятница, 13.02.2015, 18:02 | Сообщение № 556 | Тема: PowerPivot подсчет уникальных не пустых значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
может
Код
=COUNTAX(DISTINCT([Сотрудники с больничным]),[Сотрудники с больничным])


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеможет
Код
=COUNTAX(DISTINCT([Сотрудники с больничным]),[Сотрудники с больничным])

Автор - krosav4ig
Дата добавления - 13.02.2015 в 18:02
krosav4ig Дата: Воскресенье, 15.02.2015, 16:06 | Сообщение № 557 | Тема: Счет яч. с определенными данными и зависимостью от соседних
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
или массивная формула
Код
=СЧЁТ(1/(B$1:B$21=B23)/(C$1:C$21="В"))
К сообщению приложен файл: 1818859.xlsx (10.2 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеили массивная формула
Код
=СЧЁТ(1/(B$1:B$21=B23)/(C$1:C$21="В"))

Автор - krosav4ig
Дата добавления - 15.02.2015 в 16:06
krosav4ig Дата: Понедельник, 16.02.2015, 00:55 | Сообщение № 558 | Тема: Нижний индекс в формате ячейки
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
в принципе, нет ничего невозможного.
добавил в шрифт Times New Roman юникодовский глиф U2098 - подстрочная латинская m ()
upd.
в excel это
Код
=ЮНИСИМВ(8344)

сразу не обратил внимание, что шрифт > 100 кб
шрифт
К сообщению приложен файл: wer.xlsx (8.9 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Понедельник, 16.02.2015, 01:07
 
Ответить
Сообщениев принципе, нет ничего невозможного.
добавил в шрифт Times New Roman юникодовский глиф U2098 - подстрочная латинская m ()
upd.
в excel это
Код
=ЮНИСИМВ(8344)

сразу не обратил внимание, что шрифт > 100 кб
шрифт

Автор - krosav4ig
Дата добавления - 16.02.2015 в 00:55
krosav4ig Дата: Вторник, 17.02.2015, 00:05 | Сообщение № 559 | Тема: PowerPivot подсчет уникальных не пустых значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Выдает ошибку:

немного ошибся, вот так правильно
Код
=COUNTAX(DISTINCT('Больничный_лист'[Сотрудники с больничным]);[Сотрудники с больничным])


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Вторник, 17.02.2015, 00:06
 
Ответить
Сообщение
Выдает ошибку:

немного ошибся, вот так правильно
Код
=COUNTAX(DISTINCT('Больничный_лист'[Сотрудники с больничным]);[Сотрудники с больничным])

Автор - krosav4ig
Дата добавления - 17.02.2015 в 00:05
krosav4ig Дата: Вторник, 17.02.2015, 12:37 | Сообщение № 560 | Тема: Разбить запись на несколько штук
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
так нужно?

upd.

заменил файл
К сообщению приложен файл: 0795461.xlsx (10.7 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Вторник, 17.02.2015, 15:47
 
Ответить
Сообщениетак нужно?

upd.

заменил файл

Автор - krosav4ig
Дата добавления - 17.02.2015 в 12:37
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!