Jes*_*der 3 excel vba notation
我搜索了SO,并且试图找到解决方案是不成功的 - 如何通过Excel vba识别科学记数法中的列中的单元格?
这是我试图通过自动过滤行与科学记数法隔离的代码...
Private Sub cmdMoveScientificNotation_Click()
Dim objExcel As Excel.Application
Dim objWB As Excel.Workbook
Dim objWBtoAdd As Excel.Workbook
Dim newWS As Excel.Worksheet
Dim objWS As Excel.Worksheet
Dim i As Long
Dim Lrow As Long
Dim strSearch As String
Dim myRange As Range
Dim Cell As Range
Set objExcel = New Excel.Application
objExcel.Visible = True
Set objWB = Workbooks.Open("C:\TEST\Drop\Bank.xlsx", , False)
Set objWBtoAdd = Workbooks.Add
Set newWS = objWBtoAdd.ActiveSheet
Set objWS = objWB.ActiveSheet
With objWS
Lrow = .Range("A" & .Rows.Count).End(xlUp).Row
myRange = .Range("A1:V" & Lrow)
For Each Cell In myRange
If (Cell.NumberFormat = "0.00E+00") Then
.AutoFilter Field:=2, Criteria1:=strSearch
.SpecialCells(xlTypeVisible).EntireRow.Copy
End If
Next Cell
End With
newWS.PasteSpecial
End Sub
Run Code Online (Sandbox Code Playgroud)
就像是:
If IsNumeric(cell.Value) And cell.text like "*E*" Then
Run Code Online (Sandbox Code Playgroud)
如果数字太长而不适合单元格的宽度,Excel有时会切换到科学记数法而不更改数字格式.
如果您只需要查找已格式化为科学的单元格,请查看:
cell.NumberFormat
Run Code Online (Sandbox Code Playgroud)