VBA Если ячейка находится под определенной длиной, выделите и отобразите сообщение

Я пытаюсь написать макрос, который анализирует определенный столбец в электронной таблице Excel, ища записи длиной менее 9 символов, но больше 2, и если они найдены, отобразите сообщение и выделите ячейку, в которой было обнаружено это значение. Это может произойти несколько раз. Я написал следующий код:

Sub Highlight() Dim c As Range Dim LR As Integer Dim intCell As Long LR = Worksheets("Basket").Cells(Rows.Count, 6).End(xlUp).Row For intCell = 1 To 8 For Each c In Range("G20:G" & LR).Cells If Len(c.Value) < 9 And Len(c.Value) > 2 Then MsgBox "One or more of the codes is invalid. Correct the highlighted values." c.Cells(intCell).Interior.Color = vbYellow End If Next Next End Sub 

Я не могу понять, что я делаю неправильно. Любая помощь будет принята с благодарностью.

Просто угадайте, что вы хотите выделить

 Sub Highlight() Dim c As Range Dim LR As Integer Dim numProbs as long Dim sht as Worksheet Set sht=Worksheets("Basket") numProbs=0 LR = sht.Cells(Rows.Count, "G").End(xlUp).Row For Each c In sht.Range("G20:G" & LR).Cells If Len(c.Value) < 9 And Len(c.Value) > 2 Then c.entirerow.cells(1).Resize(1,8).Interior.Color = vbYellow numProbs=numProbs+1 End If Next if numProbs>0 Then msgbox "There were issues with " & numProbs & " rows. See yellow cells" end if End Sub 

Попробуйте следующий код:

 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Target, Range("A1:a10")) Is Nothing Then If Len(Target) <= 9 And Len(Target) >= 2 Then MsgBox " Length of string is " & Len(Target) Target.Font.Bold = True End If End If End Sub 

Я использовал диапазон A1: A10 для испытания.

  • Выделение в vba excel
  • SXSSFWorkbook: Есть ли способ частично выделить содержимое ячейки в SXSSFWorkbook?
  • искать слова в excel и выделять их в C #
  • Как выделить выделенный текст в excel
  • Использование VBA для выбора и выделения строк Excel
  • Excel 2010 VB Script - выделение строк
  • Выделите Row-Column выбранной ячейки
  • Выделите каждый элемент первой строки в Excel
  • Как выделить строку, если выполняются три условия?
  • Используйте MACROS, чтобы выделить ячейку, когда установлен один флажок (несколько флажков, одна ячейка)
  • Interesting Posts
    Давайте будем гением компьютера.