Я хочу ввести 3 или 4-значное значение в текстовое поле, проверить, что это число, разделить число на 1 или 2 цифры минут и 2 цифры секунд , Затем я хочу найти именованный диапазон в электронной таблице, переместиться в правый конец этого диапазона, а затем вставить смещение значения времени из числа ячеек из этой ячейки. Я также хочу отформатировать ячейку, в которую я вставляю минутку и секундную ячейку. Большинство из них работает, но у меня проблема со смещенной пастой и форматированием в самом конце небольшой процедуры. Теперь проблема заключается в вставке значения TextBox2 в эту ячейку.Найти ячейку, вставить и форматировать значение времени
Dim tbV As String
Dim sV As String
Dim mV As String
Dim TimeCell As Range
Dim LastColl As Range
tbV = TextBox2.Text
If Len(tbV) > 4 Or Len(tbV) < 2 Or Not IsNumeric(tbV) Then
MsgBox "wrong"
Exit Sub
End If
sV = Right(tbV, 2)
mV = Left(tbV, Len(tbV) - 2)
Dim iOffset As Integer
Select Case Range("AC1").Value
Case Is = 30: iOffset = 16
Case Is = 33: iOffset = 20
Case Is = 22: iOffset = 14
End Select
Set LastColl = Range("Battery" & BatteryNumber).End(xlToRight)
Set TimeCell = Range(LastCol.Offset(iOffset, 0))
TimeCell.NumberFormat = "m:ss"
TimeCell.Value = TimeSerial(0, Val(mV), Val(sV))
Try 'Set LastColl = Range ("Battery" и BatteryNumber) .END (xlToRight) .offset (iOffset, 0)) '? Я предполагаю, что вы правильно задали 'BatteryNumber' где-то и это имя диапазона ... – findwindow
* Теперь проблема в том, что вставка значения TextBox2 в эту ячейку * - Что именно ** является ** проблемой? Что происходит, когда вы выполняете 'TimeCell.Value = TimeSerial (0, Val (mV), Val (sV))'? –
Проблема заключалась в том, что временная переменная помещалась в электронную таблицу как массив в столбце. Хитрость заключалась в том, чтобы получить правильный диапазон ввода, и это было сделано с помощью вышеупомянутого бита кода. Большое спасибо за ремонт. –