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

Страницы: 1
Частые, Очень частые баги форума., В последнее время очень частое такое явления, не считая того что не видно кто на данный момент читает тему. кто в данный моент на данном форуме и так далее...
 
Кто-то может объяснить почему такое явление в последние времена стало очень частое явление? Где нумерация строк кода? И очень часто в последнее время такое встречается.
UPDATE! Смотрим скрины как данный форум ещё может работать. Николай Павлов, к вам вопрос. Почему так форум работает. Вы же этот самый от Майков, неужели Майки такие убогие что (как на данном форуме вашем) не возможно решить мелкие ньюансы, или же всё же играет роль вашего так сказать сво? Вроде бы был серьёзный ресурс кагда-то.
И ещё UPDATE! Так что там по Майскому обновления, долго ещё на данном форуме ожидать улучшений? Да, в шапке тоже есть такой же вопрс. Так что Администрация данного сайта ответит?
Изменено: MikeVol - 14.10.2023 23:46:17 (Дополнил вопрос.)
Активировать лист по названию (Caption) кнопки, vba
 
Доброго времени суток. Есть книга с 4-мя листами. На первом листе макросом во второй колонке (B) вписываются название листов за исключением первого листа:

Код
Option Explicit

Private Sub Workbook_Open()
    Dim i           As Long
    Application.ScreenUpdating = False
    ThisWorkbook.Worksheets("Sheet1").Range("B2:B" & ThisWorkbook.Worksheets("Sheet1").Cells(Rows.Count, "B").End(xlUp).Row).ClearContents

    For i = 1 To Sheets.Count

        If ThisWorkbook.Sheets(i).Name <> "Sheet1" Then
            Application.DisplayAlerts = False
            ThisWorkbook.Worksheets("Sheet1").Cells(i, 2) = Sheets(i).Name
            Application.DisplayAlerts = True
        End If

    Next

    Application.ScreenUpdating = True
End Sub


Далее, при при активации первого листа (или переходе с другого листа) создаются кнопки не ActiveX Control:

Код
Option Explicit

Private Sub Worksheet_Activate()
    Dim i As Long, iRow As Long
    Dim t           As Range
    Dim btn         As Button
    iRow = ActiveSheet.Cells(Rows.Count, "B").End(xlUp).Row
    Application.ScreenUpdating = False
    ActiveSheet.Buttons.Delete

    For i = 2 To iRow
        Set t = ActiveSheet.Range(Cells(i, 3), Cells(i, 3))
        Set btn = ActiveSheet.Buttons.Add(t.Left, t.Top, t.Width, t.Height)

        With btn
            .OnAction = "btnS" & i
            .Caption = ActiveSheet.Cells(i, 2).Text
            .Name = "CommandButton" & i
        End With

    Next i

    Application.ScreenUpdating = True
End Sub


Название (Caption) берётся из ячеек колонки B . OnAction макрос который должен активировать лист.
Вопрос, как при нажатие на любую из этих кнопок перейти к соответствующему листу взятого из название кнопки ?
Знаю что можно отдельно для каждой кнопки написать макрос типа: ThisWorkbook.Worksheets("Sheet2").Activate и так далее... Но планируется наличие свыше 15-ти листов в книге соответственно и кнопок будет такое же количество и писать столько кода для каждой кнопки для активации нужных листов не хочется. Файл пример прикладываю как есть.
Спасибо всем!
Найти дату исключив из поиска те Строки где есть текст (Значение) В Работе
 
Доброго времени суток! Помогите пожалуйста найти первую дату (Столбец "H") исключив из поиска те Строки где есть
текст (Значение)  "В Работе"
Результат работы формулы (ДАТУ) вывести в ячейку K13, отметил и выделил её на листе.
Спасибо всем кто откликнулся на данный вопрос данной темы!
Мира и Здоровья!
Выделить строку на Листе при выделение строки в ListBox
 
Доброго времени суток и с Наступающими!
Как правильно выделить строку на листе при выделение строки в ListBox при наличие пустых строк на листе? В ListBox я загрузил данные с листа без пустых строк но вот не правильно выделяет строки на самом и листе. Ниже код формы:
Код
Option Explicit

Private Sub ListBox1_Click()

    ' 1
    Dim sRow As Long, sc As Long
    If ListBox1.ListIndex = -1 Then Exit Sub
    sc = ListBox1.ListIndex

    Me.TextBox1 = ""

    If Err.Number = 0 Then

        If Me.ListBox1.List(Me.ListBox1.ListIndex, 0) <> "" Then
            sRow = ListBox1.ListIndex + 8
            ThisWorkbook.Worksheets("Sheet2").Range("A" & sRow & ":S" & sRow).Select

            Me.TextBox1.Value = Me.ListBox1.List(Me.ListBox1.ListIndex, 0)
            '            Me.TextBox2.Value = Me.ListBox1.List(Me.ListBox1.ListIndex, 0)
        End If

    Else
        Err.Clear
        MsgBox ("Произошла Ошибка! "), vbCritical
        Unload Me
    End If

End Sub

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    ThisWorkbook.Worksheets("Sheet1").Activate
    Unload Me
End Sub

Private Sub UserForm_Initialize()
    ThisWorkbook.Worksheets("Sheet2").Activate

    ' 1
    With ThisWorkbook.Worksheets("Sheet2")

        With .Range("B8:B" & .Columns("A").Find(what:="*", LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, _
                SearchDirection:=xlPrevious, MatchCase:=False, SearchFormat:=False).Row)
            Me.ListBox1.List = .Parent.Evaluate("filter(" & .Address & "," & .Resize(, 1).Address & "<>"""")")
        End With

    End With

End Sub

и сам файл пример тоже прилагаю. Спасибо всем. Мира и Здоровья!
Сравнение диапазона дат, Не более Двух лет.
 
Доброго времени суток Гуру данного форума! Нужен код vba который проверял бы диапазон имеющихся дат в столбце. Если временной (дата) диапазон в столбце "G" превышают более Двух Лет то удалить самую нижнюю строку чтоб не превышало более Двух лет по дате. Данные с датами заносятся в 9 Строку, всегда предыдущяя запись смещяется вниз.
С уважением Николай.
Обновить - Изменить данные в ячейке при наличие скрытой строки на листе.
 
Доброго времени суток вам!
Имеется форма с ListBox-м, TextBox-м и CommandButton-м. При инициализации формы в ListBox выводяться данные с листа при наличии скрытой строки. За этот макрос (Иниализации формы) Огромное Спасибо vikttur! При клике на ListBox выводяться данные с первой колонки в TextBox. Столкнулся с проблемой. Редактирую (изменяю) данные в TextBox-е и при нажатие на CommandButton хочу сохранить данные в ячейку в выбранной колонке. Помогите с макросом сохранения - изменения (кнопка Обновить - Изменить) данных при наличии скрытой строки на листе. Спасибо всем кто уделили своего драгоценного времени моей задаче.
С уважением Николай.
Заполнить ListBox только видимыми строками
 
Доброго времени суток Форумчане!
И снова я прошу у вас помощи. Как заполнить ListBox только видимыми строками? К примеру, если строка #5 на листе скрыта то она не должна отображатся в ListBox-е. На данный момент у меня отображаеться только строка #1 и #2 при скрытой строке #5.
Код
Option Explicit
Dim iArr As Variant

Private Sub UserForm_Initialize()

    With Worksheets("Sheet1")
        iArr = .Range("A2:H" & .Cells(Rows.Count, 8).End(xlUp).SpecialCells(xlCellTypeVisible).Row).Value           ' .Row).Value
    End With

    '    отображаем список
    Me.ListBox1.List = iArr
    Me.ListBox1.ColumnCount = 8
    Me.ListBox1.ColumnWidths = "220,180,100,50,50,50,50,50"
End Sub

Показываю 5-ю строку тогда в ListBox-е все строки видны. Строками #2, #3, #4, #6 хочу заполнить ListBox. Спасибо всем кто откликнулся на мой вопрос.
С Уважением Николай!
Поочерёдное заполнение столбцов данными используя всего лишь один TextBox.
 
Доброго Времени Суток всем! В очередной раз обращаюсь я к вам за помощью на данный форум.
Возможно ли используя один TextBox отредактировать поочерёдно столбцы данными при выборе строки из ListBox-а? Какой код можно применить для следуйщих действий:
Запустили форму, выбрали необходимую строку в ListBox-е для редактирования. В TextBox-е ввели данные, нажали на кнопку "NEXT COLUMN  >>>", данные вносятся в первый столбец ("A").
Опять ввели данные в TextBox снова нажали на кнопку "NEXT COLUMN  >>>", данные вносятся уже во второй столбец ("B"). И так далее до 6-го столбца ("F"), этот столбец будет у нас крайним для редактирования. Момент ещё, если в TextBox-е мы ничего не меняем то при нажатие на кнопку "NEXT COLUMN  >>>" ничего не должно изменится и в столбце выбранной строки, тоесть данные остаються Неизменными. Просто проскакиваем через этот столбец.
Облазил много форумов и гуглил, ничего похожего я не нашёл. Спасибо всем кто не прошёл мимо данной темы! С Уважением Николай.
Внести данные из формы в умную таблицу
 
Доброго времени суток Форумчане! Прошу Вашей Помощи, что-то вечером голова не соображает. Дана таблица, есть форма ввода через которую вношу данные. На форме 1 комбобокс, 1 текстбокс и кнопка ввода. При выборе значения в комбобоксе и данных в текстбоксе необходимо внести данные в таблицу. Всё вроде-бы Гуд, ничего сложного. Да, данные вносятся но не в тот столбец.
Скрытый текст

Через костыль получается внести данные
Код
Private Sub CommandButton1_Click()
    Application.ScreenUpdating = False
    Set ws1 = Sheet1
    Set tbl = ws1.ListObjects("Table1")
    Set NewRow = tbl.ListRows.Add

    With NewRow.Range

        Set RngCol = tbl.HeaderRowRange.Find(Me.ComboBox1.Value, , LookIn:=xlValues, LookAt:=xlWhole)

        If Not RngCol Is Nothing Then
            .Columns(RngCol + 1) = Me.TextBox1
        Else
            .Columns(RngCol + 1) = ""
        End If

    End With

    Application.ScreenUpdating = True
    Unload Me
    MsgBox "Данные введены, Удачи!"
End Sub

Ну это же не правильно. Может кто знает правильное решение? Подправьте код Пожалуйста.
Спасибо за то что не прошли мимо! Здоровья!
Вставка даты в диапазон после выбора значений из 3-х Combobox-в
 
Доброго времени суток Всем!
Есть пользовательская форма с тремя Combobox-ми и 2-мя Textbox-ми и есть лист откуда заполняются эти Combobox-ы. Так вот, столкнулся с проблемой такой что не получается вставить сегодняшнюю дату в диапазон после выбора значений из последних двух Combobox-в (строка - столбец). Выдаёт ошибку: Run-time error "13": Type mismatch
Помогите Пожалуйста исправить имеющийся код или переделать его. Ячейки куда должна вставляться дата выделены Светло-желтым. Заранее всем спасибо кто не прошел стороной данную тему. Здоровья всем!

Пысы. код под спойлером. Ошибка на 61-й строке.
Скрытый текст
Изменено: MikeVol - 21.07.2021 05:58:18 (Оформил текст в виде кода. Забыл.)
Счёт количества товара по приходу в интервале между двух дат
 
Доброго времени суток! Никак не могу подружить функцию СУММПРОИЗВ с объединёнными ячейками. Да, знаю что объединённые ячейки это зло но на то есть причины для их использование. В рабочем файле есть код который проставляет данные (приход - расход) по дате. Расход считается а вот приход в интервале между двух дат нет. В файле ячейки закрасил в жёлтый цвет для лучшего восприятия сути вопроса. Пожалуйста, помогите подобрать другую функцию или же эту как-то изменить. Спасибо Всем кто не прошёл мимо и заглянул в данную тему.
Пы Сы: в файле примере структура сохранена.
Изменено: MikeVol - 30.06.2021 00:27:29 (перезалил файл)
Поиск нынешней даты (месяца и года) и вставка отметки
 
Доброго Времени Суток Гуру Экселя а также и гости данного форума.
Прошу помощи у вас. Помогите Пожалуйста  доделать или изменить код в пролагаемом файле.

Код
Option Explicit

Sub Find()
    Dim fDate As Range, iDate As Variant
    Application.ScreenUpdating = False

    iDate = Format("mmm-yy")
    Set fDate = Sheet1.Columns(2).Find(iDate, , xlFormulas, xlWhole)

    If fDate Is Nothing Then
        MsgBox iDate & " не найдено", vbExclamation, "Ошибка"
        Exit Sub
    End If

    Sheet1.Activate
    fDate.Select
    ActiveCell.Offset(0, 1) = ActiveCell.Offset(0, 1) + "Yes"

    Application.ScreenUpdating = True
End Sub


Необходимо найти месяц (текущий месяц и год) (без числа) и проставить отметку в соседней (с право) ячейке. Изменял формат даты но к сожалению Без Успехов.
Код взят вот из этой темы: Изменение ячейки (дата) в соответствии с нынешней датой Спасибо за это andylu
Думал что смогу адаптировать под свои нужды, но увы. Спасибо всем заранее!!! Здоровья и Удачи!!!
Изменено: vikttur - 23.06.2021 19:56:03
Вывод данных в textbox-ы при выборе из 2-ух combobox-в.
 
Доброго Времени суток всем!
Есть таблица на листе и есть форма с двумя combobox-ми и 3-мя textbox-ми.

Для примерного пояснения задачи:
выбрали мы в combobox1 название из столбца "C", далее в combobox2 мы выбираем название из строки номер Один (D1:AP1).
В textbox1 появляется значение из диапазона (D3:AP38), в textbox2 появляется значение из строки номер Два (D2:AP2) и в textbox3 появляется значение из столбца AQ (AQ3:AQ38).
Нужен код для заполнение этих 3-х textbox-в. Как-то так. Спасибо всем кто не прошёл мимо и поможет в решение данной задачи.
Изменено: MikeVol - 01.05.2021 04:02:36 (Уточнение.)
Страницы: 1
Наверх