Как восстановить флажок после нажатия listbox_click () в Excel VBA? - PullRequest
0 голосов
/ 17 января 2020

Что бы это произошло, когда щелкнул список, он извлек бы флажок из рабочего листа.

enter image description here

Private Sub ListBox1_Click()  
Dim say, lastrow As Long

TextBox15 = ListBox1.Column(0)
TextBox18 = ListBox1.Column(1)
TextBox1 = ListBox1.Column(2)
TextBox2 = ListBox1.Column(3)
TextBox19 = ListBox1.Column(4)
TextBox3 = ListBox1.Column(5)
TextBox24 = ListBox1.Column(6)
TextBox26 = ListBox1.Column(7)
TextBox5 = ListBox1.Column(8)
TextBox6 = ListBox1.Column(9)
TextBox7 = ListBox1.Column(10)
TextBox8 = ListBox1.Column(11)
TextBox23 = ListBox1.Column(12)
TextBox22 = ListBox1.Column(13)
TextBox4 = ListBox1.Column(14)
TextBox21 = ListBox1.Column(15)
TextBox20 = ListBox1.Column(16)
TextBox11 = ListBox1.Column(17)
TextBox12 = ListBox1.Column(18)
TextBox13 = ListBox1.Column(19)
TextBox14 = ListBox1.Column(20)
TextBox27 = ListBox1.Column(21)
TextBox28 = ListBox1.Column(22)
TextBox29 = ListBox1.Column(23)
TextBox25 = ListBox1.Column(24)
TextBox30 = ListBox1.Column(25)
TextBox31 = ListBox1.Column(26)
TextBox32 = ListBox1.Column(27)
TextBox33 = ListBox1.Column(28)
CheckBox1 = ListBox1.Column(29)
CheckBox2 = ListBox1.Column(30)
CheckBox3 = ListBox1.Column(31)
CheckBox4 = ListBox1.Column(32)
CheckBox5 = ListBox1.Column(33)
CheckBox6 = ListBox1.Column(34)
CheckBox7 = ListBox1.Column(35)
CheckBox8 = ListBox1.Column(36)
CheckBox9 = ListBox1.Column(37)
CheckBox10 = ListBox1.Column(38)
CheckBox11 = ListBox1.Column(39)
CheckBox12 = ListBox1.Column(40)
CheckBox13 = ListBox1.Column(41)

lastrow = Sheets("liste").Cells(Rows.Count, "D").End(xlUp).Row
Set sonsati = Sheets("liste").Range("D2:D" & lastrow).Find(What:=TextBox1.Text, LookIn:=xlValues, LookAt:=xlWhole)
say = sonsati.Row
Sheets("liste").Range("A" & say & ":AD" & say).Select

CommandButton1.Enabled = False
CommandButton2.Enabled = True
CommandButton3.Enabled = True
End Sub

I пробовал приведенный выше код, но мне всегда выдавалось сообщение об ошибке

"Ошибка времени выполнения -2147024809", не удалось получить свойство столбца. Неверный аргумент.

1 Ответ

0 голосов
/ 20 января 2020

в списке отображается как True / False. - Crusin18 1 час a go

Вы пытаетесь назначить String для Boolean. Сначала преобразуйте его в Boolean, а затем попробуйте. Например,

CheckBox6.Value = CBool(ListBox1.Column(x))

CBool("True") вернет логическое значение True, а CBool("False") вернет логическое значение False. Если вы думаете, что могут быть пробелы, попробуйте это

CheckBox6.Value = CBool(Trim(ListBox1.Column(x)))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...