:: Visual Foxpro, Foxpro for DOS
Выделение нужного текста в ячейки Excel 2007
tim59
Автор

Сообщений: 18
Дата регистрации: 21.04.2011
Сталкивался ли кто с такой проблемой:

lnRow = lnRow + 1
kolExcel = 1
PlnRow = 'A' + ALLTRIM(STR(lnRow)) + ':' + 'D' + ALLTRIM(STR(lnRow))
.Range(PlnRow).Select
.Selection.Merge && Объединяем ячейки
.Selection.HorizontalAlignment = 1 && По левому краю
.Selection.Font.Name = RPT_FONTNAME && Имя шрифта
.Cells(lnRow,kolExcel).Font.Size = Pchift && Размер шрифта
.Cells(lnRow,kolExcel).NumberFormat = "@" && Переводим в текстовый формат
.Cells(lnRow,kolExcel).Value = 'Результат тестирования: ' + IIF(arxiv.ow_user > arxiv.ow_dop, 'Не сдано', 'Сдано')

Как мне выделить жирным шрифтом слова 'Не сдано'?
То есть выделить всё жирным шрифтом с 25 символа и далее в указанной ячейки
Спасибо.
Ratings: 0 negative/0 positive
Re: Выделение нужного текста в ячейки Excel 2007
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Через запись макроса попробуй. Т.е. просто запустить запись макроса, выделить в записанной в ячейку строке всего одно слово, сделать полужирным, остановить запись и, проанализировав полученный текст макроса, сделать по аналогии вариант кода уже для фокспро.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: Выделение нужного текста в ячейки Excel 2007
tim59
Автор

Сообщений: 18
Дата регистрации: 21.04.2011
Это первое что я пробовал.
Но у меня не получается, затем прогуглил, но ничего подходящего не нашёл.
Поэтому обратился к Вам.
Ratings: 0 negative/0 positive
Re: Выделение нужного текста в ячейки Excel 2007
AndyNigmatec

Сообщений: 1550
Откуда: Волгоград
Дата регистрации: 28.06.2015
ну запись макроса то как раз дает


ActiveCell.FormulaR1C1 = "уууууекепппп"
With ActiveCell.Characters(Start:=1, Length:=5).Font
.Name = "Arial"
.FontStyle = "обычный"
.Size = 8
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
With ActiveCell.Characters(Start:=6, Length:=7).Font
.Name = "Arial"
.FontStyle = "полужирный"
.Size = 8
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With

теперь попробовать перевести это в фокс ежели очень нужно



Исправлено 1 раз(а). Последнее : AndyNigmatec, 24.10.18 13:30
Ratings: 0 negative/0 positive
Re: Выделение нужного текста в ячейки Excel 2007
tim59
Автор

Сообщений: 18
Дата регистрации: 21.04.2011
Range("A1717").Select
ActiveCell.FormulaR1C1 = "Результат тестирование: Не Сдано"
With ActiveCell.Characters(Start:=1, Length:=24).Font
.Name = "Calibri"
.FontStyle = "Обычный"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
With ActiveCell.Characters(Start:=25, Length:=8).Font
.Name = "Calibri"
.FontStyle = "полужирный"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
Range("A1818").Select
End Sub

Вот что даёт, я понимаю что мне всё не нужно
Если Вас не затруднит помогите.



Исправлено 1 раз(а). Последнее : tim59, 24.10.18 13:38
Ratings: 0 negative/0 positive
Re: Выделение нужного текста в ячейки Excel 2007
AndyNigmatec

Сообщений: 1550
Откуда: Волгоград
Дата регистрации: 28.06.2015
вот пряма счас заради эксперимента попробовал из фокса:

WITH loExcel.Workbooks(lcWbName).Sheets(1)
.Cells(1,1).Characters(1, 5).Font.Bold = .T.
ENDWITH

таки без ошибок отработало

ЗЫ loExcel создаем по CREATEOBJECT() и т.д.

ЗЗЫ всякие

.Name = "Calibri"
.FontStyle = "полужирный"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
не обязательно указывать ежели их не менять - тока лишняя писанина

ЗЗЗЫ: и от всяких Select ячеек тож при переводе макроса можно избавляться - достаточно указать нужный диапазон - т.е. Range



Исправлено 4 раз(а). Последнее : AndyNigmatec, 24.10.18 13:44
Ratings: 0 negative/1 positive
Re: Выделение нужного текста в ячейки Excel 2007
tim59
Автор

Сообщений: 18
Дата регистрации: 21.04.2011
Спасибо AndyNigmatec
Вы мне помогли.
Ratings: 0 negative/0 positive
Re: Выделение нужного текста в ячейки Excel 2007
tim59
Автор

Сообщений: 18
Дата регистрации: 21.04.2011
Я взял у Вас всего одну строку
.Cells(1,1).Characters(1, 5).Font.Bold = .T.
Это то что мне было нужно.
Подставил лишь свои значения
.Cells(lnRow,kolExcel)..........
Спасибо.
Ratings: 0 negative/1 positive
Re: Выделение нужного текста в ячейки Excel 2007
AndyNigmatec

Сообщений: 1550
Откуда: Волгоград
Дата регистрации: 28.06.2015
Не за что )))
только странно что вам запись макроса этого не показала ...
Ratings: 0 negative/0 positive
Re: Выделение нужного текста в ячейки Excel 2007
tim59
Автор

Сообщений: 18
Дата регистрации: 21.04.2011
В строке макроса
ActiveCell.Characters(Start:=25, Length:=8).Font
и т.д.
меня смутила
ActiveCell. + я сам что то тупанул.
Как то так.
Спасибо Вы мне помогли выйти из этого тупика.
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 20 vlgrech  (Гостей: 19)

© 2000-2024 Fox Club 
Яндекс.Метрика