2016-06-29 2 views
0

Я хотел бы сравнить значение 2 текстовых полей в powerpoint и выделить тот, который имеет наибольшее числовое значение.VBA в Powerpoint: значение текстового поля

Вот мой код:

If ActivePresentation.Slides(4).Shapes("Rectangle 84").TextFrame.TextRange.Text.Value >= ActivePresentation.Slides(4).Shapes("Rectangle 95").TextFrame.TextRange.Text.Value Then XXXX 

К сожалению, если прямоугольник 84 имеет значение «11» и Прямоугольник 95 значение 6, то в настоящее время 6 подсвечивается. Есть ли способ преобразовать текст в числовое значение, чтобы получить правильный результат?

Благодаря Джеймс

+0

'CInt' или' Cdbl' может помочь вам преобразовать текст номеров – newguy

ответ

1

Try преобразования значения чисел первого, например, с помощью CLng (конвертировать в длину) или CDbl (конвертировать в два раза), если вы ожидаете, не являющиеся целыми числами.

If CDbl(ActivePresentation.Slides(4).Shapes("Rectangle 84").TextFrame.TextRange.Text.Value) >= CDbl(ActivePresentation.Slides(4).Shapes("Rectangle 95").TextFrame.TextRange.Text.Value) Then XXXX 

Строка "11" является «меньше», чем "6", потому что они упорядочиваются в алфавитном порядке.

Вы также можете проверить, если текст является действительным использованием IsNumeric перед преобразованием, чтобы предотвратить тип не соответствует

Смежные вопросы