Конвертировать VBA в Java для Doubleklick в таблицах Google - PullRequest
0 голосов
/ 15 апреля 2019

Мне нужно конвертировать Makro в Excel / VB в таблицы Google

Я пытался использовать конвертеры Java, но это не сработает так, как я:

private final void Worksheet_BeforeDoubleClick(Range Target, boolean Cancel) {
    if (!(Intersect(Target, Range("A50:R131")) == null)) {
        this.Unprotect;
        if ((Target == "")) {
            Target = "X";
        }
        else {
            Target = "";
        }

        this.Protect;
        Cancel = true;
    }

}

ЭтоVB-код я успешно использую в Excel:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

If Not Intersect(Target, Range("A50:R131")) Is Nothing Then

    Me.Unprotect

    If Target = "" Then
        Target = "X"
        Else
        Target = ""
    End If
    Me.Protect

    Cancel = True
End If

Конец Sub

В промежутке я пробовал в Javascript Thx до snapstromegon

но я получилОшибка в строке 6: Синтаксическая ошибка?

<script language="JavaScript">

var nl = getNewLine()

function getNewLine() {
    var agent = navigator.userAgent

    if (agent.indexOf("Win") >= 0) <--- What is wrong here?
        return "\r\n"
    else
        if (agent.indexOf("Mac") >= 0)
            return "\r"

    return "\r"

}

pagecode = 'Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    If Not Intersect(Target, Range("A50:R131")) Is Nothing Then

        Me.Unprotect

        If Target = "" Then
            Target = "X"
            Else
            Target = ""
        End If
        Me.Protect

        Cancel = True
    End If
End Sub'

document.write(pagecode);

</script>

1 Ответ

1 голос
/ 16 апреля 2019

Не тратьте свое время, пытаясь преобразовать макрос VBA / Excel в Google Sheets.Вместо этого начните с нуля.

Я не думаю, что есть конвертер JavaScript, который обеспечивает результат, который вы ищете, потому что в Google Sheets используется скрипт Google Apps, который предоставляет специальные сервисы, которые не включены в JavaScript.

Чтобы начать с нуля, сначала вы должны понимать различия между Excel и Google Sheets, поскольку некоторые функции, такие как запись макросов и защита листа / диапазона, хотя и похожи, они не работают одинаково, поэтому, возможно, выдолжен изменить дизайн вашего решения.

Рекомендации

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...