Доброго времени суток Всем! Есть пользовательская форма с тремя Combobox-ми и 2-мя Textbox-ми и есть лист откуда заполняются эти Combobox-ы. Так вот, столкнулся с проблемой такой что не получается вставить сегодняшнюю дату в диапазон после выбора значений из последних двух Combobox-в (строка - столбец). Выдаёт ошибку: Run-time error "13": Type mismatch Помогите Пожалуйста исправить имеющийся код или переделать его. Ячейки куда должна вставляться дата выделены Светло-желтым. Заранее всем спасибо кто не прошел стороной данную тему. Здоровья всем!
Пысы. код под спойлером. Ошибка на 61-й строке.
Скрытый текст
Код
Option Explicit
Dim dt As Date
Public Function ReturnUniqueValue(Rng As Range) As Variant ' функция принимает аргументом диапазон ячеек и возвращает массив уникальных значений
Dim Dict As Object, myArr(), vValue As Variant
Set Dict = CreateObject("Scripting.Dictionary")
myArr = Rng.Value
For Each vValue In myArr
Dict.Item(CStr(vValue)) = 0
Next
ReturnUniqueValue = Dict.Keys
End Function
Private Sub Cancel_Click()
Unload Me
End Sub
Private Sub cbT_Change()
cbU.Clear
If cbT = "ЧастьА" Then
With Me.cbU
.Clear
.List = ReturnUniqueValue(Range("D2:I2"))
End With
End If
If cbT = "ЧастьБ" Then
With Me.cbU
.Clear
.List = ReturnUniqueValue(Range("D10:I10"))
End With
End If
End Sub
Private Sub cbU_Change()
Dim Addr$, arr(), iArr
cbP.Clear
With CreateObject("Scripting.Dictionary"): .CompareMode = vbTextCompare
arr = Range("B3:B7,B11:B15")
If Addr = "" And TypeName(Selection) = "Range" Then Addr = Selection.Address
For Each iArr In arr
If Trim(iArr) <> "" Then .Item(Trim(iArr)) = .Item(Trim(iArr)) + 1
Next
cbP.List = (.Keys)
End With
End Sub
Private Sub Insert_Click() ' Insert Date
dt = DateSerial(Year(Now), Month(Now), Day(Now))
With Sheet2
.Cells(cbP, cbU) = dt
End With
End Sub
Private Sub UserForm_Initialize()
cbT.List = Array("ЧастьА", "ЧастьБ")
' cbP.List = Array("ТекстАБ", "ТекстАВ", "ТекстАГ", "ТекстАД", "ТекстАЕ")
End Sub
Доброго!!! Интересно, а как вы хотели не получить ошибку, у свойства Сells должны быть аргументы числовые, вы же передаете в скобках текст, из за этого и получаете ошибку несоответствия типов данных
"Все гениальное просто, а все простое гениально!!!"