powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Результаты вставляються в две ячейки, хотя задаю 1-ну ячеку
5 сообщений из 5, страница 1 из 1
Результаты вставляються в две ячейки, хотя задаю 1-ну ячеку
    #39308665
Ser123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите правильно написать. Этот код возвращает результат в ячейку Cells(1, 1) после кода ElseIf . Не могу понять как это избежать.


Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Sub fff()

Cells(2, 1) = Get_Bold_Only(Cells(1, 1))

End Sub
____________________________________________________________________________________________

Function Get_Bold_Only(rCell As Range)
    Dim lLen As Long, sRes As String, li As Long
    lLen = Len(rCell.Value)
    For li = 1 To lLen
        If rCell.Characters(li, 1).Font.Bold Then
          sRes = sRes & rCell.Characters(li, 1).Text
          iStart = InStr(rCell.Value, sRes)
          iEnd = InStrRev(rCell.Value, sRes)
          iLength = Len(sRes)
        ElseIf iStart > 0 And iLength > 0 Then
          rCell = Left(rCell.Value, iStart) + "<b>" + sRes + "</b>" + Right(rCell.Value, lLen - iStart - iLength)
          li = li + 7
        End If
    Next li
    Get_Bold_Only = rCell
...
Рейтинг: 0 / 0
Результаты вставляються в две ячейки, хотя задаю 1-ну ячеку
    #39308693
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ser123как это избежать.ничего не писать в rCell
...
Рейтинг: 0 / 0
Результаты вставляються в две ячейки, хотя задаю 1-ну ячеку
    #39308833
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сдается мне, что надо так делать:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Function Get_Bold_Only(rCell As Range)
    Dim lLen As Long, sRes As String, s As String, li As Long
    lLen = Len(rCell.Value)
    For li = 1 To lLen
        If rCell.Characters(li, 1).Font.Bold Then
          sRes = sRes & rCell.Characters(li, 1).Text
          iStart = InStr(rCell.Value, sRes)
          iEnd = InStrRev(rCell.Value, sRes)
          iLength = Len(sRes)
        ElseIf iStart > 0 And iLength > 0 Then
          s = Left(s, iStart) + "<b>" + sRes + "</b>" + Right(s, lLen - iStart - iLength)
          li = li + 7
        End If
    Next li
    Get_Bold_Only = s
...
Рейтинг: 0 / 0
Результаты вставляються в две ячейки, хотя задаю 1-ну ячеку
    #39308883
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist,

ну и четко обозначить до кучи
Код: vbnet
1.
Function ...(...) As String

тогда ошибка ТС была бы видна ему с самого начала
...
Рейтинг: 0 / 0
Результаты вставляються в две ячейки, хотя задаю 1-ну ячеку
    #39308982
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

согласен
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Результаты вставляються в две ячейки, хотя задаю 1-ну ячеку
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]