Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
Фильтр по значению в сводной таблице
 
Вопрос решился довольно просто.

Можно просто сделать двухуровневую структуру строк - Месяц/Статья, а в столбцах выводить нужный показатель и тогда можно сделать фильтр именно по статьям, который будет корректно отрабатывать.
Фильтр по значению в сводной таблице
 
Добрый день.

Подскажите, пожалуйста, существует сводная таблица, которая имеет столбцы Статья; Месяц; Долг.
Если мы фильтруем по статьям, чтобы выводились только значения меньше 0, то фильтр отрабатывает не по каждому месяцу, а смотрит только на общий итог. Как можно сделать, чтобы такой фильтр отрабатывал применительно к каждому месяцу (пример во вложении), чтобы оставались только отрицательные значения?

Спасибо.  
Поиск значений по первым символам названия в столбце и запись на новый лист по порядку
 
Цитата
МатросНаЗебре написал:
Код
Sub Fnd()
Dim colAddress As New Collection 
findText = "user"
For Each WS In Worksheets    
Set c = WS.Cells.Find(What:=findText, After:=Cells(1), LookIn:=xlValues, LookAt:= _        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)    
If Not c Is Nothing Then                 
sFirst = ""                 
Do            
If sFirst = "" Then               
sFirst = c.Address            
Else                
If sFirst = c.Address Then Exit Do            
End If                         
colAddress.Add c.Address            
Set c = WS.Cells.FindNext(c)            
If c Is Nothing Then Exit Do        
Loop                 
For Each iCol In colAddress            
Range(iCol).Offset(, 1).Value = Range(iCol).Value        
Next             
 End If
Next
End Sub
Спасибо большое! все работает
Изменено: Noxikus - 20.08.2016 13:54:46
Поиск значений по первым символам названия в столбце и запись на новый лист по порядку
 
Есть два куска кода, которые выполняют нужные действия, но не получается их совместить...
1й - ищет нужное значение и копирует значение во второй столбец, но не делает тоже самое с остальными значениями:
Код
Sub FindIt()Dim i As Long
Dim FinalRow As Long
With Worksheets(1).Range("a1:a500")
FinalRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To FinalRow
If Cells(i, 1).Value = Cells.Find(What:="user", After:=ActiveCell, LookIn:=xlValues, _
        LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
        MatchCase:=False) Then Cells(i, 2) = Cells(i, 1).Value
        firstAddress = Cells(i, 2).Address
        Do
        Cells(i, 2) = .FindNext()
        Loop While Not Cells(i, 2) Is Nothing And Cells(i, 2).Address <> firstAddress
Next i
End With
End Sub
2й - ищет все нужные значения в первом столбце, но не копирует их во второй, а просто заменяет на указанное значение:
Код
Sub Fnd()
findText = "user"
For Each WS In Worksheets
    Set c = WS.Cells.Find(What:=findText, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
    If Not c Is Nothing Then
        
        Do
            c.Value = "hh"
            Set c = WS.Cells.FindNext(c)
            If c Is Nothing Then Exit Do
        Loop
        
    End If
Next
End Sub

Может кто-нибудь помочь их совместить, чтобы все найденные значения копировались во второй столбец ?
Поиск значений по первым символам названия в столбце и запись на новый лист по порядку
 
На данный момент получилось найти и скопировать во второй столбец нужно значение:
Код
Sub FindIt()
Dim i As Long
Dim FinalRow As Long
FinalRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To FinalRow
If Cells(i, 1).Value = Cells.Find(What:="user", After:=ActiveCell, LookIn:=xlValues, _
        LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
        MatchCase:=False) Then Cells(i, 2) = Cells(i, 1).Value


Next i
End Sub
Может кто-нибудь сможет подсказать, как можно зациклить поиск по всему столбцу, чтобы все найденные значения копировались, а не только первое найденное?

Спасибо.
Поиск значений по первым символам названия в столбце и запись на новый лист по порядку
 
Пример во вложении, спасибо.
Поиск значений по первым символам названия в столбце и запись на новый лист по порядку
 
Пробовал через ВПР и ПОИСК, но не отрабатывает в нужном виде...
Поиск значений по первым символам названия в столбце и запись на новый лист по порядку
 
Добрый день.
Подскажите, пожалуйста, как можно реализовать поиск значений по первым символам названия в столбце и запись на новый лист по порядку, если значение в ячейке удовлетворяет. Вроде бы задача простая, но что-то не получается сделать...

Например столбец с данными:
id: 111,
date: 232324,
name: ddd

Нужно пройтись по такому столбцу с большим количеством таких данных и записать значения по id типа "111" по порядку на новый лист.

Спасибо.
Изменено: Noxikus - 20.08.2016 22:37:51
из html (страница диалогов вконтакте) выгрузить в excel список id пользователей с которыми есть переписки
 
Цитата
Игорь написал: это можно сделать при помощи макроса
Это, конечно, понятно :) хотелось бы более существенную информацию по данному вопросу...
из html (страница диалогов вконтакте) выгрузить в excel список id пользователей с которыми есть переписки
 
Добрый день.

Подскажите, пожалуйста, как можно выгрузить из html (страница диалогов вконтакте) в excel список id пользователей с которыми есть переписки?

Спасибо.
Автоматическое сохранение файла excel по указанному пути
 
Я делаю автоматически перед сохранением книги:
Код
Private Sub workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Call SaveWbCopy
End Sub
Автоматическое сохранение файла excel по указанному пути
 
Да, действительно, просто из-за закрывающего слэша не работало...

Спасибо.
Автоматическое сохранение файла excel по указанному пути
 
Добрый вечер.

Подскажите, пожалуйста, почему на отдельном сервере при удаленном подключении файл excel не сохраняется? Вроде бы путь указан, но без результата...
Код
Option Explicit
'---------------------------------------------------------
Const sDefPath$ = "C:\eee"   ' путь для автосохранения по умолчанию"
Const sHK$ = "^+s"   ' хоткей Ctrl+Shift+S
'-------- глобальные переменные --------------------------
Public sSavePath$   ' текущий путь для автосохранения
Public iPeriod%   ' период автосохранения (минут)
Public bAutoSave As Boolean   ' флаг управления режимом автосохранения включен/выключен

Sub SaveWbCopy()   ' сохранить копию открытой книги
    On Error Resume Next
    Dim Wb As Workbook: Set Wb = ThisWorkbook
    Dim sSuffix$, sExpansion$, sFileName$
    sSuffix = " [" & Format(Now, "yyyy/mm/dd hh-mm'ss''") & "]"   ' суффикс к имени файла копии - дата и время сохренения копии файла
    sExpansion = Right(Wb.Name, Len(Wb.Name) - InStrRev(Wb.Name, ".") + 1)   ' расширение файла (".xls")
    sFileName = Left(Wb.Name, Len(Wb.Name) - Len(sExpansion)) & sSuffix & sExpansion    ' "Книга1 [2010.06.02 10-30'22''].xls"
    sSavePath = "C:\eee"
    Wb.SaveCopyAs sSavePath & sFileName
End Sub
Спасибо.
Получить данные из сводной таблицы с учетом условия - меньше нуля
 
Добрый день.
Подскажите, пожалуйста, какая должна быть формула, если к стандартной функции Получить данные из сводной таблицы нужно еще добавить условие для данных, чтобы они были меньше нуля:

ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ("Наш долг ";'Статьи расходов месяц'!A4:MM999;"Месяц";"Май")

Спасибо.
Автоматическая копия файла не хочет сохраняться по указанному пути
 
Так вот первый вариант и используется - 18 и 19 строка  :) или не так что-то нужно писать?
Автоматическая копия файла не хочет сохраняться по указанному пути
 
Хотя не совсем работает... Если пишу так:
Код
Option Explicit
'---------------------------------------------------------
Const sDefPath$ = "/Desktop/Новая папка"   ' путь для автосохранения по умолчанию"
Const sHK$ = "^+s"   ' хоткей Ctrl+Shift+S
'-------- глобальные переменные --------------------------
Public sSavePath$   ' текущий путь для автосохранения
Public iPeriod%   ' период автосохранения (минут)
Public bAutoSave As Boolean   ' флаг управления режимом автосохранения включен/выключен


Sub SaveWbCopy()   ' сохранить копию открытой книги
    On Error Resume Next
    Dim Wb As Workbook: Set Wb = ThisWorkbook
    Dim sSuffix$, sExpansion$, sFileName$
    sSuffix = " [" & Format(Now, "yyyy/mm/dd hh-mm'ss''") & "]"   ' суффикс к имени файла копии - дата и время сохренения копии файла
    sExpansion = Right(Wb.Name, Len(Wb.Name) - InStrRev(Wb.Name, ".") + 1)   ' расширение файла (".xls")
    sFileName = Left(Wb.Name, Len(Wb.Name) - Len(sExpansion)) & sSuffix & sExpansion    ' "Книга1 [2010.06.02 10-30'22''].xls"
    sSavePath$ = ThisWorkbook.Path
    Wb.SaveCopyAs sSavePath & sFileName
End Sub
то файл сохраняется на рабочий стол и к названию файла приписывается название папки, в которой на данный момент находится файл...
Автоматическая копия файла не хочет сохраняться по указанному пути
 
Все работает, спасибо.
Автоматическая копия файла не хочет сохраняться по указанному пути
 
Sanja, копии должны сохраняться в отдельную папку, а не туда, где расположен основной файл.
Автоматическая копия файла не хочет сохраняться по указанному пути
 
Если прописываю:
Public sSavePath$ = "/Users/user/Desktop/Новая папка"
то выдается ошибка - Ожидается завершение оператора...
Скрытие пустых строк в сводной таблице при нажатии на кнопку (VBA)
 
Добрый день.
Есть два сводных отчета, на каждом листе есть кнопка Обновить данные. К кнопкам привязан макрос обновления данных сводной таблицы и макрос скрытия пустых строк. Кнопки по сути одинаковые, но макрос скрытия должен работать только для второго листа/отчета. Если обновить данные по кнопке на первом отчете, то во втором отчете данные обновятся, но будут отображены пустые строки, а если обновить данные именно на втором отчете/листе, то пустые строки будут скрыты.
Подскажите, пожалуйста, как заменить выполнение этого макраса с Active sheet на конкретный лист второго отчета, чтобы скрытие пустых строк корректно отрабатывало при нажатии на кнопку Обновить данные даже на первом листе/отчете?
Код:
Код
Sub Refresh_All()
ThisWorkbook.RefreshAll

    Dim ra As Range, delra As Range, ТекстДляПоиска As String, ТекстДляПоиска2 As String
    Application.ScreenUpdating = False    ' отключаем обновление экрана

    ТекстДляПоиска = "(пусто)"    ' удаляем строки с таким текстом

    ' перебираем все строки в используемом диапазоне листа
    For Each ra In ActiveSheet.UsedRange.Rows
        ' если в строке найден искомый текст
        If Not ra.Find(ТекстДляПоиска, , xlValues, xlPart) Is Nothing Then
            ' добавляем строку в диапазон для удаления
            If delra Is Nothing Then Set delra = ra Else Set delra = Union(delra, ra)
        End If
    Next
    ' если подходящие строки найдены - удаляем их
    If Not delra Is Nothing Then delra.EntireRow.Hidden = True

Dim i As Integer, d As Integer
    Application.ScreenUpdating = False
    d = ActiveSheet.UsedRange.Rows.Count
    For i = 2 To d
    If Cells(i, 1).Value <> "(пусто)" And Cells(i, 1).Value <> "" Then
        Rows(i).Hidden = False
    End If
    Next i
    Application.ScreenUpdating = True
    Application.StatusBar = "Поиск " & i & " из " & d

Call SaveWbCopy
End Sub
Изменено: Noxikus - 16.05.2016 23:30:50
Автоматическая копия файла не хочет сохраняться по указанному пути
 
Добрый день.
Подскажите, пожалуйста, есть VBA, который автоматически делает резервные копии файла, но почему то не хочет сохранять файлы по указанному пути, вместо этого отправляет все в Документы:
Код
Option Explicit
'---------------------------------------------------------
Const sDefPath$ = "/Users/user/Desktop/Новая папка"   ' путь для автосохранения по умолчанию"
Const sHK$ = "^+s"   ' хоткей Ctrl+Shift+S
'-------- глобальные переменные --------------------------
Public sSavePath$   ' текущий путь для автосохранения
Public iPeriod%   ' период автосохранения (минут)
Public bAutoSave As Boolean   ' флаг управления режимом автосохранения включен/выключен


Sub SaveWbCopy()   ' сохранить копию открытой книги
    On Error Resume Next
    Dim Wb As Workbook: Set Wb = ThisWorkbook
    Dim sSuffix$, sExpansion$, sFileName$
    sSuffix = " [" & Format(Now, "yyyy/mm/dd hh-mm'ss''") & "]"   ' суффикс к имени файла копии - дата и время сохренения копии файла
    sExpansion = Right(Wb.Name, Len(Wb.Name) - InStrRev(Wb.Name, ".") + 1)   ' расширение файла (".xls")
    sFileName = Left(Wb.Name, Len(Wb.Name) - Len(sExpansion)) & sSuffix & sExpansion    ' "Книга1 [2010.06.02 10-30'22''].xls"
    Wb.SaveCopyAs sSavePath & sFileName
End Sub
Изменено: Noxikus - 16.05.2016 23:30:17
Как не учитывать регистр при вводе в списках подстановок (выпадающем списке)
 
Catboyun, спасибо большое, все работает.
Как не учитывать регистр при вводе в списках подстановок (выпадающем списке)
 
Catboyun, может сможете подсказать по одному нюансу?

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

Можно ли как-нибудь сделать, чтобы после выбора значения из списка в ячейке из диапазона, в искомую ячейку A2 автоматически выставлялось пустое значение, чтобы при переходе на другую ячейку можно было отобразить список со всеми значениями?

Спасибо.
Как не учитывать регистр при вводе в списках подстановок (выпадающем списке)
 
Спасибо, Catboyun
Помогла простая замена 'Найти' на 'Поиск' в этой формуле.
Как не учитывать регистр при вводе в списках подстановок (выпадающем списке)
 
Добрый вечер.

Во вложении пример с реализованным поиском по выпадающему списку. Все работает, но есть один нюанс, как можно отключить учитывание регистра?
В Кассе в поле контрагент можно ввести некий набор букв, перенести указатель и потом открыть выпадающий список и там будут отфильтрованы все значения с листа Справочник по указанным в поле символам. Можно как-нибудь сделать, чтобы использовать без регистра?

Спасибо.
Изменено: Noxikus - 05.05.2016 09:11:47
Поиск в выпадающем списке (применить для множества ячеек в столбце)
 
Решение, с которым удалось скрестить данный способ и получить нужный результат -
http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=77581&TITLE_SEO=77581-vyvod-v-ya...
Вывод в ячейке последнего введенного значения в диапазоне ячеек
 
Catboyun, спасибо большое! Отличное и простое решение (макрос).

vikttur, ахаха) ну примером только та простенькая функция задумывалась)
Вывод в ячейке последнего введенного значения в диапазоне ячеек
 
Вот например в указаной мной функции если написать - Ячейка("содержимое"; A3), то в ячейке будет выходить значение из ячейки A3.
Если просто написать Ячейка("содержимое"), то будет выходить последнее введенное значение на листе.
Как можно сделать, чтобы выходило последнее введенное значение, но только из диапазона ячеек? Например, A3:A100. Ввели в ячейке A50 - '100'. В искомую ячейку A2 попало это значение. Потом ввели в ячейку A11 - '200', в искомую ячейку переписалось это последнее значение.

По Вашему примеру что-то не могу понять что/к чему...
Изменено: Noxikus - 04.05.2016 23:19:09
Вывод в ячейке последнего введенного значения в диапазоне ячеек
 
Добрый вечер.

Подскажите, пожалуйста, существует функция Ячейка("содержимое") - выводит последнее введенное значение на листе.
Ячейка("содержимое") находится в A2, как сделать, чтобы в этой ячейке выводилось последнее введенное значение в диапазоне ячеек A3:A100 ?

Спасибо.
Поиск в выпадающем списке (применить для множества ячеек в столбце)
 
Прошу прощения, ссылку перепутал... поправил.

PS данную тему разбирал и другие похожие, но хотелось бы по этому способу попробовать узнать. Почему то данный способ на русскоязычных форумах еще не обсуждался...

Спасибо.
Страницы: 1 2 След.
Наверх