В данном вопросе макрорекордер мне уже не может помочь, здесь просто надо знать, а я не знаю. В таблице есть столбец с единицами измерения ТАКОГО ВИДА, нужно программно убрать лишнее, чтобы стало ТАК. Таблица вниз может быть очень большой, и встречаются и пустые строки и объединенные ячейки. Помогите с кодом
Спасибо.
Доброго дня, уважаемые знатоки!
В данном вопросе макрорекордер мне уже не может помочь, здесь просто надо знать, а я не знаю. В таблице есть столбец с единицами измерения ТАКОГО ВИДА, нужно программно убрать лишнее, чтобы стало ТАК. Таблица вниз может быть очень большой, и встречаются и пустые строки и объединенные ячейки. Помогите с кодом
Public Sub ЕдиницыИзмерения() Dim ПерваяЯчейка As Range, ПоследняяСтрока As LongPtr, СчетчикСтрок As LongPtr, Столбец As Integer, НомерПервогоПробела As Integer
For СчетчикСтрок = ПерваяЯчейка.Row To ПоследняяСтрока If InStr(1, Cells(СчетчикСтрок, Столбец).Value, "комплект", 1) > 0 Then Cells(СчетчикСтрок, Столбец).Value = "к-кт" Else НомерПервогоПробела = InStr(Trim(Cells(СчетчикСтрок, Столбец).Value), " ") If НомерПервогоПробела > 0 Then Cells(СчетчикСтрок, Столбец).Value = Mid(Trim(Cells(СчетчикСтрок, Столбец).Value), 1, НомерПервогоПробела - 1) End If End If Next СчетчикСтрок
End Sub
[/vba]
Здравствуйте. [vba]
Код
Public Sub ЕдиницыИзмерения() Dim ПерваяЯчейка As Range, ПоследняяСтрока As LongPtr, СчетчикСтрок As LongPtr, Столбец As Integer, НомерПервогоПробела As Integer
For СчетчикСтрок = ПерваяЯчейка.Row To ПоследняяСтрока If InStr(1, Cells(СчетчикСтрок, Столбец).Value, "комплект", 1) > 0 Then Cells(СчетчикСтрок, Столбец).Value = "к-кт" Else НомерПервогоПробела = InStr(Trim(Cells(СчетчикСтрок, Столбец).Value), " ") If НомерПервогоПробела > 0 Then Cells(СчетчикСтрок, Столбец).Value = Mid(Trim(Cells(СчетчикСтрок, Столбец).Value), 1, НомерПервогоПробела - 1) End If End If Next СчетчикСтрок
Erjoma1981, подскажите пожалуйста, часто бывает в единицах измерения слова "комплект" и одновременно в других ячейках "комплектов" вопрос - можно мне в строчке кода [vba]
Код
If InStr(1, Cells(СчетчикСтрок, Столбец).Value, "комплект", 1) > 0 Then Cells(СчетчикСтрок, Столбец).Value = "к-кт"
[/vba] через запятую добавить "комплектов" и будет так работать? [vba]
Код
If InStr(1, Cells(СчетчикСтрок, Столбец).Value, "комплект", "комплектов", 1) > 0 Then Cells(СчетчикСтрок, Столбец).Value = "к-кт"
[/vba]
Попробовал - не хочет работать. Значит нужно еще такую строчку добавить?
Не надо ничего добавлять, макрос меняет и слово "комплект" и слово "комплектов" в к-кт... Странно конечно, но меняет.
Erjoma1981, подскажите пожалуйста, часто бывает в единицах измерения слова "комплект" и одновременно в других ячейках "комплектов" вопрос - можно мне в строчке кода [vba]
Код
If InStr(1, Cells(СчетчикСтрок, Столбец).Value, "комплект", 1) > 0 Then Cells(СчетчикСтрок, Столбец).Value = "к-кт"
[/vba] через запятую добавить "комплектов" и будет так работать? [vba]
Код
If InStr(1, Cells(СчетчикСтрок, Столбец).Value, "комплект", "комплектов", 1) > 0 Then Cells(СчетчикСтрок, Столбец).Value = "к-кт"
[/vba]
Попробовал - не хочет работать. Значит нужно еще такую строчку добавить?
Не надо ничего добавлять, макрос меняет и слово "комплект" и слово "комплектов" в к-кт... Странно конечно, но меняет.grh1
Vadym Gorokh
Сообщение отредактировал grh1 - Понедельник, 26.07.2021, 09:31