2016-05-14 3 views
0

Я экспорт данных от доступа к Excel с помощью VBA, и я хочу, чтобы преуспеть, чтобы получить эти строки: -доступ к Excel VBA двойной выпуск котировки

=COUNTIF('Sheet1'!G2:G68,"1/1") 
=COUNTIF('Sheet1'!G2:G68,"1/2") 
etc... 

моя проблема заключается в том, что я не могу добавить эти двойные цитаты Хорошо, я знаю, что напечатать этот символ я должен поставить его в два раза, как это «», но до сих пор не повезло, я получаю все виды ошибок, пожалуйста, вы можете изменить мой код: =

For r = 6 To 16 
.Range("B" & r).Value = "=COUNTIF('Sheet1'!C1:C67,1/" & r - 5 & ")" 
Next 

благодаря

+0

спасибо за ответ, но ваш код по-прежнему отсутствует (") знак –

ответ

1

Если вы wi ш, чтобы встроить двойные кавычки в строку, которую вы строите вы можете сделать это (как вы упомянули), используя две пары двойных кавычек в «побег» двойной цитатой вы пытаетесь добавить, следующим образом:

"=COUNTIF('Sheet1'!C1:C67,""1/" & r - 5 & """)" 

... который будет возвращать:

=COUNTIF('Sheet1'!C1:C67,"1/-5") 

важный момент, чтобы помнить, что для того, чтобы должным образом избежать двойных кавычек вы вставляете, вы не сосчитать двойные кавычки, которые определяют строковое себя в качестве одного из две пары; Вот почему в приведенном примере в конце есть 4 пары:

""")" 

Внешние два определяют собственно строку; внутренние два представляют собой экранированный символ двойной кавычки.

Я всегда считал эту форму несколько запутанной и часто предпочитал вместо этого вставлять двойные кавычки, используя функцию chr, передавая значение ascii для символа двойной кавычки, что составляет 34;

"=COUNTIF('Sheet1'!C1:C67," & chr(34) & "1/" & r - 5 & chr(34) & ")" 

... который будет возвращать один и тот же результат, как и в первом примере:

=COUNTIF('Sheet1'!C1:C67,"1/-5") 

Надеется, что это помогает,

Nim

+0

Вы были более чем полезны, это сработало, спасибо –

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