Я хочу удалить отрицательные значения в диапазоне в excel. У меня есть код, который удаляет, но не все значения.Преобразование значения диапазона от текста до номера
Я узнал, что сначала должен изменить значение на числовой тип. У меня есть код ниже, в котором я пытался сделать это с cDec
и Convert.ToInt32
, но не был успешным. Я новичок в vba, я мало знаю о его типах данных. Ваша помощь будет весьма значимой:
Sub Button1_Click()
Dim ws As Worksheet
Dim i As Integer
i = 1
Set ws = Sheets("Recovered_Sheet1")
ws.Activate
Dim r As Excel.Range
For Each r In Range("A1:A250").Rows
If Not IsEmpty(ActiveCell.Value) Then
'move to the row below
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = CDec(ActiveCell.Value)
End If
Next r
Do While Cells(i, 1).Value <> ""
If Cells(i, 1) < 0 Then
Cells(i, 1).EntireRow.Delete
End If
i = i + 1
Loop
End Sub
http://stackoverflow.com/questions/20192371/vba-conver-text-numbe r-multiplying-by-1 –
http://stackoverflow.com/questions/21627250/excel-vba-convert-string-entered-in-user-form-to-number –