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

Страницы: 1
Как соотнести CheckBox в пользовательской форме с нужным столбцом
 
Спасибо. А еще уточнение, как сделать чтобы в обратном порядке она тоже работала? Если в таблице истина - галочка в чекбоксе не стоит(
Как соотнести CheckBox в пользовательской форме с нужным столбцом
 
На листе Первичные данные вызывается форма двойным кликом по фамилии. В форме чекбоксы: Релаксация, Бос-трениг, консультации должны соотносится со соответсвующими столбцами в таблице Первичные данные (соответственно если галочка стоит в столбце должно стоять значение истина, если не стоит то ложь)
Изменено: nickkon - 07.11.2025 10:15:51
Как соотнести CheckBox в пользовательской форме с нужным столбцом
 
Коллеги, добрый день!
Столкнулся с проблемой, никак не могу найти решение.
Есть пользовательская форма, в которой имеются TextBox и CheckBox. Код для соотнесения TextBox получилось написать, помогите пожалуйста дописать код, чтобы галочка CheckBox устанавливала значение истина/ложь в определенном столбце
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  If Target.Column = 2 Then
    Cancel = True
    With UserForm1
      .TextBox2 = Target 'Фамилия Имя Отчество
      .TextBox6 = Target.Offset(0, 2)  'Дата рождения
      .TextBox1 = Target.Offset(0, -1) '№ п/п
      .TextBox3 = Target.Offset(0, 3) 'Положение
      .TextBox5 = Target.Offset(0, 4) 'Должность
      .TextBox7 = Target.Offset(0, 5) '№ УПФТ
      .TextBox8 = Target.Offset(0, 6) '№ Исследования
      .TextBox9 = Target.Offset(0, 7)
      .TextBox10 = Target.Offset(0, 8)
      .TextBox11 = Target.Offset(0, 9)
      .TextBox12 = Target.Offset(0, 11)
      .TextBox13 = Target.Offset(0, 15)
      .TextBox14 = Target.Offset(0, 19)
      .TextBox15 = Target.Offset(0, 12)
      .TextBox16 = Target.Offset(0, 16)
      .TextBox17 = Target.Offset(0, 20)
      .TextBox18 = Target.Offset(0, 13)
      .TextBox19 = Target.Offset(0, 17)
      .TextBox20 = Target.Offset(0, 21)
      .TextBox21 = Target.Offset(0, 14)
      .TextBox22 = Target.Offset(0, 18)
      .TextBox23 = Target.Offset(0, 22)
      .TextBox24 = Target.Offset(0, 23)
      .TextBox25 = Target.Offset(0, 24)
      .TextBox26 = Target.Offset(0, 27)
      .TextBox27 = Target.Offset(0, 28)
      .TextBox28 = Target.Offset(0, 29)
      .TextBox29 = Target.Offset(0, 30)
      .TextBox30 = Target.Offset(0, 32)
      .TextBox31 = Target.Offset(0, 33)
      .TextBox32 = Target.Offset(0, 31)
      .TextBox33 = Target.Offset(0, 41)
      .TextBox34 = Target.Offset(0, 39)
      .TextBox35 = Target.Offset(0, 40)
      .TextBox36 = Target.Offset(0, 42)
      .TextBox37 = Target.Offset(0, 46)
      .TextBox38 = Target.Offset(0, 45)
      .TextBox39 = Target.Offset(0, 43)
      .TextBox40 = Target.Offset(0, 44)
      .TextBox41 = Target.Offset(0, 48) 'Жалобы
      .TextBox42 = Target.Offset(0, 49) 'Хронические заболевания
      .TextBox43 = Target.Offset(0, 50) 'Примечание
      .TextBox44 = Target.Offset(0, 51) 'Рост
      .TextBox45 = Target.Offset(0, 52) 'Вес
      .TextBox46 = Target.Offset(0, 53) 'САД
      .TextBox47 = Target.Offset(0, 54) 'ДАД
      .TextBox48 = Target.Offset(0, 55) 'ЧСС
      .TextBox49 = Target.Offset(0, 56) 'SpO2
      .TextBox50 = Target.Offset(0, 61) 'Рекомендации
      .TextBox51 = Target.Offset(0, 60) 'Риск
      .ComboBox2 = Target.Offset(0, 58) 'Группа риска
      .ComboBox3 = Target.Offset(0, 59) 'ПВК
      .Show
      End With
  End If
End Sub
Изменено: Sanja - 07.11.2025 09:56:51 (Изменил название темы. Она должна отражать СУТЬ задачи, а не быть просто названием контрола. На будущее)
Расчет медианы, моды по фильтру
 
В приложенном файле на 1 листе, используется функция сводных таблиц, на основании фильтра(ФИО, должность) производится расчет среднего. Возможно ли организовать такой процесс для расчета медианы и моды, по такому же принципу? Может можно прописать с помощью макроса, буду благодарен если пропишите код для образца  
Пользовательская форма VBA
 
нашел пример кода, для ввода информации с этого же листа.


Sub DataEntryForm()
Dim nextRow As Long
nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row
With Producty
If .Range("A2").Value = "" And .Range("B2").Value = "" Then
nextRow = nextRow - 1
End If
Producty.Range("Name").Copy
.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
.Cells(nextRow, 3).Value = Producty.Range("Volum").Value
.Cells(nextRow, 4).Value = Producty.Range("Price").Value
.Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value
.Range("A2").Formula = "=IF(ISBLANK(B2), """", COUNTA($B$2:B2))"
If nextRow > 2 Then
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A" & nextRow)
Range("A2:A" & nextRow).Select
End If
.Range("Diapason").ClearContents
End With
End Sub

где внести правки, чтобы сама форма располагалась на другом листе?
Пользовательская форма VBA
 
Подскажите, как сделать что из листа Форма для ввода информация заносилась в лист Первичные данные?
если пропишите пример кода, буду очень благодарен  
Страницы: 1
Наверх