Используйте VBA, чтобы найти все ячейки в диапазоне с одиночной EM da sh и удалить эти ячейки - PullRequest
0 голосов
/ 23 января 2020

Я искал возрасты, но не нашел простого способа сделать это.

У меня есть таблица с отрицательными и положительными числами и большим количеством ячеек с одиночным Em da sh (или эквивалентным) , как в символах, которые выглядят как тире.

Я хочу выбрать диапазон и удалить все такие ячейки.

Я думал использовать Len (<2), но все еще не могу найти легкий путь использовать VBA, чтобы сделать это. </p>

Привет, чтобы заменить некоторые типы да sh Я использовал код ниже. Но я не мог понять, как выбирать только ячейки с одиночным да sh. Выбор длины один найдет ячейки, но это не может быть идеальным способом поиска.

Dim LastRow As Integer
LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
Range("B1:K" & LastRow).Select
Cells.Replace What:=ChrW(8722), Replacement:=Chr(45), lookat:=xlPart
Cells.Replace What:=Chr(150), Replacement:="", lookat:=xlPart
End Sub

Спасибо

Нил

1 Ответ

0 голосов
/ 23 января 2020
    Sub RemoveDashes()
     Dim m, r, cell As Object
     Dim b As Boolean

     Set m = Sheets("Sheet1").Range("B1")
     Do
      Set m = m.Offset(1, 0)
      Set r = m.Resize(25, 1)
      b = False
      For Each cell In r
       If cell.Value <> "" Then
        b = True
       End If
      Next cell

'covers em, en, and hyphen:
      If m.Value = "—" Or m.Value = "–" Or m.Value = "-" Then m.Value = ""
     Loop Until b = False
    End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...