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

Страницы: 1
Макрос для SQL зароса в excel, Не работает макрос для выведение результата sql запроса в ячейку excel
 
StepanWolkoff, К сожалению этот код не является полностью моим полностью магию как происходит подключение я не понял, но  вставлять в ячейку результат надо ибо в последствии будет много разных запросов с одним числом из разных БД. Просто париться с аксесовскими отчетами откровенно говоря не хотелось, они реально ужасны.

Хотя конструкция вида, была б явно лучше, но как
Цитата
Dim varConn As New Connection

varConn.Open "BD"
Jungl Спасибо, с вашей помощью запрос заработал
Изменено: FastPuppy - 28.02.2018 17:00:41
Макрос для SQL зароса в excel, Не работает макрос для выведение результата sql запроса в ячейку excel
 
Здравствуйте уважаемые формучане, в файле примера, при его запуске вылезает форма, которая позволяет выбрать месяц и год и на основе этих данных получить отчет на листе эксель, но при работе выдает ошибку "1004 синтаксическая ошибка sql" и ругается на строчку .refresh backgroundquery:=false. Кто может подсказать в чем может быть проблема, и может быть в принципе мой способ получение sql запроса не оптимальный.

Для полной картины сылку на БД прилагаю https://drive.google.com/open?id=1gIAo0VNcMoir5Dzg7zNzR_-UQhaLAVYp
Подсчет количества ячеек подходящих под шаблон
 
Убрал, теперь компилируется, но выдает просто ИСТИНА и все. Для большего понимания в шапку добавляю файл примера
Подсчет количества ячеек подходящих под шаблон
 
Здравствуйте уважаемый формучане. Есть задача подсчитать количество ячеек подходящих под шаблон, например:
123
213
123
123
213
1
Для это таблице функция должна выдать 5, если шаблон ### (любые числа). Для этого написал небольшой макрос, но почему-то он не выдает ошибок в работе, но всегда выдает ЗНАЧ.
P.s. Существует ли способ используя функцию СЧЁТЕСЛИ решить аналогичную задачу? По определенному значению, только пустые или только заполненные, она позволяет посчитать, может и шаблон тоже возможно подсчитать с ее помощью?
Код макроса:
Код
Function ТЕКСТКАК1(text As Range, patter As String) As Boolean
Dim I, arr, S
arr = Intersect(text, text.Parent.UsedRange).Value
    For I = 1 To UBound(arr)
        If arr(I, 1) Like patter Then
        I = I + 1
        End If
        Next
            ТЕКСТКАК1 = I - 1
End Function
Изменено: FastPuppy - 05.02.2018 09:07:11 (Добавил файл примера и исправил код в соответствии с комментариями)
Перенос текстовых значений из диапазона ячеейк в ячейку
 
Все теперь таблица работает на 100% как я задумывал, большое спасибо Sanja, вы себе невероятно помогли.  
Перенос текстовых значений из диапазона ячеейк в ячейку
 
Hugo,Я ничего не менял, этот из файла, который мне прислали
Перенос текстовых значений из диапазона ячеейк в ячейку
 
Hugo,Это уже творческий энтузиазм автора, круто относиться к другому макросу, который работает как часы)
Перенос текстовых значений из диапазона ячеейк в ячейку
 
Спасибо, очень круто!!!! Правда почему-то у меня не работает этот макрос
Код
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Columns("H")) Is Nothing And Target.Count = 1 Then
    arr = Range("C3:H" & Cells(Rows.Count, "H").End(xlUp).Row).Value
    With CreateObject("Scripting.Dictionary")
        For I = 1 To UBound(arr)
            If arr(I, 6) <> Empty Then iTemp = .Item(Format(arr(I, 1), "mmmm yyyy"))
        Next
        With Worksheets("Лист1")
            .Range("A1:A" & .Cells(.Rows.Count, "H").End(xlUp).Row).ClearContents
        End With
        Worksheets("Лист1").Range("A1").Resize(UBound(.Keys) + 1) = Application.Transpose(.Keys)
    End With
End If
End Sub
Перенос текстовых значений из диапазона ячеейк в ячейку
 
Sanja, Спасибо, то что надо!!! А еще не подскажите как мне ограничить диапазон по двум условиям? Я так понимаю конструкция ИНДЕКС(ссылка;ПОИСКПОЗ()) дает выбрать только одно условие, да и если честно запусть ее в функции БРАК у меня не получилось.  
Перенос текстовых значений из диапазона ячеейк в ячейку
 
Смотрите на листе БД В колонке брак у меня стоит один раз трещина и два раза размеры(Дата поступления в октябре). И в колонке причины брака я руками написал Трещина - 1 шт. Размеры - 2 шт. Следовательно если я выбрал б ноябрь 2017 в шапке таблицы на листе Участок я б написал просто скол - 2 шт., так как на листе БД в напротив ноября в колонке Дата поступления у меня две ячейки скол
То есть что должен уметь макрос
1) Отбирать диапазон ячеек колонки БРАК, на основе колонок ТИП, Эксп. Дата поступления. (как это реализовано в колонках Получено, брак, годные, передано, в работе листа Участок)
2) Из этого диапазона записывать значения ячеек БРАК листа БД в ячейку Причины брака листа Участок в формате Значение ячейки - (количество повторных значений) шт.
Постарался по подробнее описать. Сылку на таблицу даю через гугл диск так как из-за одной форму она весит 5 мб https://drive.google.com/open?id=1VkunekUWJkFAL9vZHlILkIrk9kUEFJAk
Перенос текстовых значений из диапазона ячеейк в ячейку
 
Sanja, Отличная функция, которая очень выручает, было б совсем круто если б она еще умела произвольный текст копировать из столбца, и если есть повторения так же сортировать их по штукам, но это я уже сам допилю. Большое спасибо за помощь в ситуации!!!
Перенос текстовых значений из диапазона ячеейк в ячейку
 
Здравствуйте, уважаемые форумчане!

В ходе работы над таблицей встала следующая задача, на листе БД, есть поле брак и мне нужно, что б все текстовые значения поля брак, через запятую переносились в ячейку F5 листа УЧАСТОК(если они посимвольно повторяются, то было б круто если б писалось "Брак - 2 шт."), с теме же условиями проверки, как и для ячейки C5 того же листа. То есть, что б значения брались только из диапазона ограниченного столбцами ТИП и Эксп, листа БД. и месяцев при выборе его из выпадающего списка. Можно ли эту задачу решить стандартными средствами excel? Если нету, то прошу посильной помощи в создании пользовательской функции.

Ps Динамический список с автоматическим добавлением месяцев по мере заполнения листа БД работает, просто через костыль, который раздувает файл до 5 мегабайт веса, так что в примере это удалил.
Перестало работать автозаполнение формул по двойному клику
 
Макрос написал, тему можно закрывать
Перестало работать автозаполнение формул по двойному клику
 
До последний не обязательно конечно, но без столбца, который сначала выдергивает месяц из колонки даты на листе БД, а потом создает аналогичный без повторений месяца, у меня не получится создать динамический список на листе Участок №491. К слову почему-то расширенный фильтр с проблемой справиться не помогает, выдавая ошибку "ссылка". Короче я худо бедно смог решить задачу взяв макрос (вроде даже с вашего сайта)
Код
Function Уник(ByVal ra As Range) As Variant     On Error Resume Next: Dim cell As Range, coll As New Collection, txt$     For Each cell In ra.Cells         txt$ = Trim(cell): If Len(txt$) Then coll.Add txt$, txt$     Next cell     ReDim newarr(1 To coll.Count, 1 To 1)     For i = 1 To coll.Count: newarr(i, 1) = coll(i): Next i     Уник = newarr End Function 

Попробовал написать свой макрос на копирование уникальных ячеек до тех пор пока не появится пустая ячейка, но чет напортачил

 

Код
Sub Test2()      '      ActiveSheet.Cells(1, 4).Select      i = 1      Do Until IsEmpty(ActiveCell)         If ActiveCell.Value = ActiveCell.Offset(1, 0).Value Then         ActiveCell.Offset(1, 0).Select         Else         Selection.Copy ActiveSheet.cell(i, 1)         i = i + 1         End If        ActiveCell.Offset(1, 0).Select      Loop   End Sub

Изменено: FastPuppy - 26.12.2017 11:29:43
Перестало работать автозаполнение формул по двойному клику
 
Здравствуйте, уважаемые форумчане. Столкнулся с следующей проблемой в данном файле на листе "лист1" столбец А был заполнен формулами(=ЕСЛИ(СЧЁТЗ('Участок № 491 БД'!C3);ТЕКСТ('Участок № 491 БД'!C3;"ММММ ГГГГ");"")) до конца, а потом с помощью удалить дубликаты оставались только уникальные значения. Так вот еще вчера все работало как надо, но почему-то сегодня данный столбец ( а нужен он для динамического списка) перестал работать как надо, функция мгновенное заполнение не хочет работать ни в каком виде (двойной клик по крестику или через работу с данными). Файл по каким-то непонятным причинам раздуло до размеров в 5 мегабайт, по этому делюсь им через гугл диск https://drive.google.com/open?id=1nt1TxQjJQPdts5o8ljGdjilgnrY9Jlz-
Составить динамический диапазон из списка дат на месяц
 
Все я разобрался, спасибо большое всем ответившим, тему можно закрывать
Составить динамический диапазон из списка дат на месяц
 
Спасибо, это именно, то что я имел ввиду, а еще не подскажите с таких подходом возможно ли приделать в клетку G1 выпадающий список с месяцами?
Составить динамический диапазон из списка дат на месяц
 
Вот для более точной постановки задачи, накидал формул в отчет, для одного тип изделия.
Составить динамический диапазон из списка дат на месяц
 
Вы абсолютно правы

Цитата
Сергей написал: что дальше каков результат должен получится
Вот так примерно должна выглядить эта таблица, и я представляю как сделать каждую ячейку например за последние 30 дней. Но мне хотелось б что б пользователь могу это делать динамически выбирая месяц на основе столбца "Дата поступления"
Получено Брак Причины брака Годные Передано В работе На складе
Сумма полей "дата поступления" Сумма полей "Комментарии/брак" Дублирование полей "Комментарий/Брак" Сумма полей № Датчик Сумма полей "Дата передачи"-сумма полей "Брак" Количество пустых полей"Дата передачи" напротив заполненных "Дата поступления" Не используется
Составить динамический диапазон из списка дат на месяц
 
Здравствуйте, уважаемые форумчани. В файле примера стоит след задача, есть лист БД и есть лист отчета. Скажите каким образом можно "перенести" фильтр по месяцам в выпадающий список на листе отчета? То есть, что б пользователь выбрал январь например и отныне все формулы в таблице отчета обсчитывали только таблицу с фильтром на январь в столбце дата поступления. Если резюмировать, то как мне возможно фильтр (и обсчет с учетом фильтра) перенести в выпадающий список. Как применить ИНДЕКС или СМЕЩ в данном контексте не в полной мере понял. Отдельной функции ФИЛЬТР к сожалению не нашел. Надеюсь правильно сформулировал свой вопрос, Заранее спасибо за помощь.
Изменено: FastPuppy - 22.12.2017 09:40:41
Страницы: 1
Наверх