Попробуйте
Sub Test()
Dim LastRow As Long
Dim Vendors As Range
LastRow = Cells(1, 1).End(xlDown).Row
Set Vendors = Range(Cells(2, "A"), Cells(LastRow, "A"))
For i = 2 To LastRow
If WorksheetFunction.CountIf(Vendors, Cells(i, "A").Value) > 1 Then
If Cells(i, "E") = False Then
Cells(i, "E").EntireRow.Delete
i = i - 1
End If
End If
Next i
End Sub
Я использовал Саксофон CommStudio в прошлом, но теперь я просто использую Систему. IO.Ports. SerialPort.
Случайно Вы используете последовательный порт USB? У меня были проблемы с теми, которые идут BSOD и этажерка. Если это так, у Вас есть проблема с драйвером, не программная проблема.
Если Вы хотите сделать некоторый поиск и устранение неисправностей за пределами своего приложения, Вы могли бы взглянуть на последовательный монитор HHD. Я думаю, что у них есть бесплатная демонстрационная версия, но если Вы делаете какую-либо серьезную разработку RS232, это действительно стоит купить.
portmon - http://technet.microsoft.com/en-us/sysinternals/bb896644.aspx
Я сказал бы, что это является самым близким к 'стандартному' инструменту для последовательных портов мониторинга в Windows. Но небеса помогают Вам, если необходимо попытаться разыскать что-то после двух недель с помощью этого вида инструмента...
Я подозревал бы проблему с драйвером - действительно ли это - 'надлежащий' последовательный порт со стандартным UART или является этим некоторый Последовательный USB преобразователь или подобный?
Обновление 2017: Portmon был довольно полезным предложением в 2008, но никогда не обновлялся для работы с 64-разрядными версиями Windows, не потрудитесь пробовать его теперь на современной машине.
Я использовал программное обеспечение жесткого диска Свободный Монитор Последовательного порта. Это зарегистрирует весь трафик и откроется/замкнется последовательный порт. Тем путем у Вас есть журнал данных и операция последовательного порта.