Как я могу использовать кавычки внутри входной строки в VBA? - PullRequest
0 голосов
/ 10 июля 2009

Я пытаюсь ввести ColumnWidths для списка в MS-Access2007 VBA, и у меня возникают проблемы с получением десятичных чисел.

Код:

ResultList.ColumnWidths = "1;0.65;0.7;0.7;0.8;0.4"
Debug.Print ResultList.ColumnWidths

Что вводится для ColumnWidths:

1;1;1;1;1;0

То, как я хочу, чтобы это выглядело, введено (основываясь на том, что там сейчас):

1";0.65";0.7";0.7";0.8";0.4"

Вопрос:

Как мне узнать, что я хочу получить десятичные дроби, чтобы они перестали округляться? Есть ли способ ввести кавычки в строку, которую вы хотите ввести?

Ответы [ 2 ]

2 голосов
/ 10 июля 2009
ResultList.ColumnWidths = "1 cm;0.65 cm;0.7 cm;0.7 cm;0.8 cm;0.4 cm"

Посмотрите документацию для ColumnWidths.В нем указано

Свойство ColumnWidths содержит значение, определяющее ширину каждого столбца в дюймах или сантиметрах, в зависимости от системы измерения (США или метрика), выбранной в поле Система измерения на вкладке Число в диалоге региональных параметровокно панели управления Windows.Значение по умолчанию составляет 1 дюйм или 2,54 см.Параметр свойства ColumnWidths должен иметь значение от 0 до 22 дюймов (55,87 см) для каждого столбца в списке или поле со списком.

РЕДАКТИРОВАТЬ: Вы также можете указать ширину в дюймах.

ResultList.ColumnWidths = "1 in;0.65 in;0.7 in;0.7 in;0.8 in;0.4 in"
0 голосов
/ 11 июля 2009

Шахкалпеш дал вам решение вашей проблемы, но ответ на ваш настоящий вопрос заключается в удвоении каждой кавычки в строке.

sWidths = "1"";0.65"";0.7"";0.7"";0.8"";0.4"""
Debug.Print sWidths

->  1";0.65";0.7";0.7";0.8";0.4"

Это очень не красиво! Вот как вы бы это делали в обычной строковой переменной VB, но это не правильный синтаксис для этого свойства.

...