Разрыв кода строки » _» в макросах StarBasic LibreCalc не работает в строке в кавычках

#libreoffice-calc #libreoffice-basic

Вопрос:

Разрыв кода строки » _» в макросах StarBasic LibreCalc не работает в строке в кавычках

Итак, как я могу избежать символа продолжения строки в кавычках » _»?

напр..

 Const SCells = "B17:C28,E17:G28,L17:O28,T17:V28,AA17:AE28,AN17:AR28, _
BB17:BD28,BO17:BS28,BY17:CB28,CG17:CI28,CS17:CW28,DB17:DF28,DL17:DN28, _
DU17:DX28,EF17:EK28,ET17:EV28,FA17:FD28,FJ17:FL28,FV17:FZ28,GD17:GF28, _
GM17:GO28"
splitCells = Split(SCells,",")

sub Cells_range

for i = 0 to 2 step 1

print splitCells(i)

next i

end sub
 

Ответ №1:

Да, правильный синтаксический

 Const SCells = "B17:C28,E17:G28,L17:O28,T17:V28,AA17:AE28,AN17:AR28," amp; _
    "BB17:BD28,BO17:BS28,BY17:CB28,CG17:CI28,CS17:CW28,DB17:DF28,DL17:DN28," amp; _
    "DU17:DX28,EF17:EK28,ET17:EV28,FA17:FD28,FJ17:FL28,FV17:FZ28,GD17:GF28," amp; _
    "GM17:GO28"

Sub  Cells_range
    splitCells = Split(SCells,","), etc.
 

Обратите внимание — расчет splitCells = ... записан внутри процедуры

Ответ №2:

Я обнаружил это в строках макросов starbasic в LibreCalc:

  • затем вы должны закончить кавычки
  • разорвите строку с помощью символа подчеркивания»_», который является продолжением строки starbasic / vba.
  • а затем используйте»amp;», которые соединяют строки
  • все прерывистые строки должны быть заключены в кавычки в начале и в конце.

напр.

 Const SCells = "B17:C28,E17:G28,L17:O28," _
         amp; "BB17:BD28,BO17:BS28," _
         amp; "BY17:CB28,CG17:CI28,CS17:CW28"

      print SCells