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

Страницы: 1 2 След.
Согласиться на исправление формулы, не охватывающей смежные ячейки в vba
 
А если формулы разные? (Заменил файл-пример в первом посте)
Согласиться на исправление формулы, не охватывающей смежные ячейки в vba
 
ivanok_v2, видимо, у нас возникло недопонимание. Мне необходим макрос, который бы поменял формулы в ячейках диапазона B2:AC2 так, как это предлагает встроенный инструмент поиска ошибок:
   
Чтобы не клацать вручную по каждой ячейке.
Изменено: KROKS - 06.09.2018 12:43:47
Согласиться на исправление формулы, не охватывающей смежные ячейки в vba
 
Добавил в первый пост.
Согласиться на исправление формулы, не охватывающей смежные ячейки в vba
 
Есть идеи?
Согласиться на исправление формулы, не охватывающей смежные ячейки в vba
 
Цитата
ivanok_v2 написал:
можно.
Как? Формулы остаются. Можно ли это сделать средствами экселя, а не путем "ручной" перебивки формул?
Изменено: KROKS - 03.09.2018 10:35:32
Согласиться на исправление формулы, не охватывающей смежные ячейки в vba
 
Добрый день. Макрос вырезает и вставляет строки в таблице в нужные места, после этих процедур суммирующие строки в таблице (и не только суммирующие, но использующие "свой" диапазон) не охватывают вновьвставленные ячейки. Можно ли как-то пройтись по строкам и согласиться на добавление в формулу смежных ячеек макросом? Спасибо.
Изменено: KROKS - 06.09.2018 13:02:19
Значения суммируются только после иззменения формата
 
Разделите на единицу в соседнем столбце
Обращение к ключу словаря типа Range по значению
 
TheBestOfTheBest, Дмитрий Щербаков,
Допустим что в А1 написано "Ячейка".
dict.add key:=cells(1,1), Item:="smth" - вполне ключом можно сделать ячейку.
dict.exists("Ячейка") покажет False. Даже dict.exists(Cells(1, 1)) покажет Fasle

p.s. .Plan - Это поле класса, который создан как Item для крайнего словаря
Изменено: KROKS - 18.04.2018 15:57:02
Обращение к ключу словаря типа Range по значению
 
Здравствуйте. Есть структура данных, содержащая магазины, типы товаров в них, недели, план/факты продаж.
Есть куча файлов от разных магазинов, которые нужно свести воедино.
Я пошел путем создания словаря магазинов, где ключ - имя магазина (строка), а объект - [словарь, где ключ - тип товара (ячейка (Range)), а объект - опять {словарь, где ключ - номер недели (строка), а объект - новый элемент класса с полями План/Факт.}]
Проблема оказалась в том, чтобы потом обратиться к ключу, в который я записал ячейку целиком, по value этой ячейки, например "Vegetables":
Код
dictShops.Items("Shop1").Items("Vegetables").Items("14").Plan
Задумывалось что по Value этой ячейки она будет "отзываться" и я смогу тянуть из нее номер колонки, строки и т.п., но увы. Подскажите, пожалуйста, как до этого ключа достучаться? Заранее благодарю.
Изменено: KROKS - 18.04.2018 15:32:23
Не срабатывает условие фильтрации символов при TextBox_KeyPress
 
Ігор Гончаренко, Согласен. Идеальное решение, спасибо!
Не срабатывает условие фильтрации символов при TextBox_KeyPress
 
Ігор Гончаренко, Идея была в том, что если уж начали вбивать цифры, то продолжаем принимать только цифры, соответственно и с буквами. Поэтому нет необходимости проверять последний символ, достаточно первого.
Не срабатывает условие фильтрации символов при TextBox_KeyPress
 
А можно как-нибудь сымитировать modeless чтобы можно было осуществлять навигацию по книге при открытом окне? Или наоборот, имитация приостановки кода, пока юзер не отработает с окном? Когда во время выполнения кода макрос попросит указать номер столбца, то совсем не факт, что юзер его наизусть помнит и книга прокручена на нужный столбец.
Изменено: KROKS - 16.04.2018 14:03:47
Не срабатывает условие фильтрации символов при TextBox_KeyPress
 
Dima S, Действительно. Интересная методика, спасибо.
Книга со ссылками на другие источники. Excel 2016.
 
Юрий М, Есть, я думаю проблема в том что он при разрыве в таком случае оставит ошибки, а не последние подтянутые значения.
Не срабатывает условие фильтрации символов при TextBox_KeyPress
 
AAF, так и сделано
Код
asciicode = Asc(Left(TextBox.Text, 1))
Select Case asciicode
   Case 48 To 57
   Case 65 To 90, 97 To 122
   Case Else
End Select
Не срабатывает условие фильтрации символов при TextBox_KeyPress
 
Цитата
ProFessor написал:
Конкретизируйте, пожалуйста, вводимые данные и желаемый результатЕсли вы хотите просто провести проверку и после неё обозначить столбец через вводимую букву и/или цифру, то Вы очень сильно намудрили
Я хочу сделать проверку на столбец, причем если пользователь начал вводить цифры, то дальше ввод возможен только цифр, соответственно и с буквами. Чтобы на выходе были значения от 1 (кстати, тут ошибка) до 16384 или от A до XFD, и не было значений вроде c3p0.
Преобразовать Дата Время
 
Время - это десятичная часть. Округлите значение до целого, потом форматируйте.
Добавление макросом знака в ячейку
 
Код
s = "54342123234"
r = Left(s, Len(s) - 3) & "-" & Right(s, 3)
Изменено: KROKS - 16.04.2018 11:29:23
Книга со ссылками на другие источники. Excel 2016.
 
Открыть в 2010, разорвать связи, сохранить.
Не срабатывает условие фильтрации символов при TextBox_KeyPress
 
Добрый день. Делаю форму ручного ввода номера столбца юзером. Хочу сделать фильтрацию по вводимым значениям - либо номер столбца, либо его буквенное обозначение. Однако, при использовании формы он допускает ввод буквы и цифры (например a1) а потом и вовсе игнорирует длину текста. Полагаю, что игнорируется условие
Код
If (KeyAscii >= 65 And KeyAscii <= 90) Or (KeyAscii >= 97 And KeyAscii <= 122) And Len(TextBox.Text) <= 3 Then
Однако, при ручной отладке это условие срабатывает и цифры не допускаются, а при обычной работе макроса - игнор. Заранее благодарю за помощь.
Проверить ячейку на ошибку или пустоту или равенство нулю
 
Catboyun, самый лаконичный работающий вариант.
Горшочек, не вари. Всем огромное спасибо, можно закрывать :)
Проверить ячейку на ошибку или пустоту или равенство нулю
 
Владимир, рабочий вариант, спасибо. Также можно сократить до =--ЕСЛИОШИБКА(A2>0;).
Изменено: KROKS - 18.09.2017 11:45:19
Проверить ячейку на ошибку или пустоту или равенство нулю
 
Bema, работает, спасибо. Хотя условие ЕНД(A2) мне видится избыточным. Разве нет?
Проверить ячейку на ошибку или пустоту или равенство нулю
 
Нужно проверить ячейку на ошибку или пустоту или равенство нулю. Если нет ошибки или пустоты или нуля, то возвращать 1, иначе 0.
Изменено: KROKS - 18.09.2017 11:21:51
Проверить ячейку на ошибку или пустоту или равенство нулю
 
День добрый.
Нужно проверить ячейку на ошибку или пустоту или равенство нулю. Как можно обойти такую проблему - если внутри формулы ИЛИ одно из значений ошибка, то вся формула в результате выдаст ошибку. Если в A1 - ошибка, то в формуле ЕСЛИ(ИЛИ(ЕСЛИОШИБКА(A1);A1="";A1=0);0;1) первое условие - истина, а оставшиеся 2 - #НД.
Заранее спасибо.
Скачивание файла из интернета по ссылке макросом
 
Игорь, Спасибо большое!
Подскажите, пожалуйста, что делает эта строчка:
Код
If DisableCache Then Randomize: URL$ = URL$ & IIf(InStr(1, URL, "?") > 0, "&", "?") & "rnd=" & Left(Rnd(Now) * 1E+15, 10)
Скачивание файла из интернета по ссылке макросом
 
День добрый, профессионалы.
Есть макрос генерирующий ссылку на скачивание файла (пример). Но я никак не могу дойти до того как скачивать этот файл в папку с файлом, в котором исполняется макрос, использовать и удалять. Пробовал реализовать через iexplorer - не получилось решить проблему диалога с "сохранить как". Подскажите, пожалуйста, как решить эту проблему? Спасибо.
RunTime Error 9 в цикле по фигурам на листе
 
Игорь Гончаренко,Спасибо за совет.
Не работал еще со словарями. Буду осваивать.
RunTime Error 9 в цикле по фигурам на листе
 
Влад, Игорь Гончаренко, Да, все верно. Массив имеет все фигуры "fig*" но не все фигуры "desc*".
Сделал два цикла, вроде работает.
Но возможно-ли это реализовать более компактно?
Код
    ReDim arrFigures(0) As Figure
    i = 0
    For Each Shape In sh.Shapes
        If Shape.Name Like "fig*" Then
            ReDim Preserve arrFigures(i)
            arrFigures(i).Name = Shape.Name
            arrFigures(i).HasDescription = False
            i = i + 1
        End If
    Next Shape
    
    For Each Shape In sh.Shapes
        If Shape.Name Like "desc*" Then
            For el = LBound(arrFigures) To UBound(arrFigures)
                If arrFigures(el).Name Like ("*" & Mid(Shape.Name, 6)) Then arrFigures(el).HasDescription = True
            Next el
        End If
    Next Shape
RunTime Error 9 в цикле по фигурам на листе
 
Поковырял немного код. Сначала цикл перебирает все фигуры с префиксом "fig*" и все заполняется. Потом, когда приходят фигуры "desc*" и вылетает ошибка. Но тогда весь массив уже заполнен и необходимо дополнительно сопоставлять уже по имени.
Страницы: 1 2 След.
Наверх