2014-11-05 3 views
0

В любом случае, чтобы преобразовать excel VBA в Google Appscript, чтобы я мог использовать его в электронной таблице Google? Мне нужно следующий код, чтобы преобразовать в Google скриптКак использовать VBA в Google Таблицах?

Sub ReCalculate() 

    Dim i As Integer, j As Integer, NoOfRows As Integer 

' Get total number of rows 

     With Sheet1 
      NoOfRows = .Cells(.Rows.Count, "A").End(xlUp).Row 
     End With 

' add all the duplicated values and replace the duplicates with "DELETE" to be deleted later. 

    For i = 2 To NoOfRows 
     For j = i + 1 To NoOfRows 
      If Cells(i, 1).Value = Cells(j, 1).Value And Cells(j, 1).Value <> "DELETE" Then 
       Cells(i, 2).Value = Cells(i, 2).Value + Cells(j, 2).Value 
       Cells(j, 1).Value = "DELETE" 
       Cells(j, 2).Value = "0" 
      End If 
     Next j 
    Next i 

' Get total number of rows 

     With Sheet1 
      NoOfRows = .Cells(.Rows.Count, "A").End(xlUp).Row 
     End With 

' Delete all rows with word "DELETE" 

    For i = 2 To NoOfRows + 1 
     If Cells(i, 1).Value = "DELETE" Then 
      Rows(i).EntireRow.Delete 
      i = i - 1 
     End If 
    Next i 

    End Sub 
+0

Это должно быть предложено в веб-приложениях Stack Exchange. http://webapps.stackexchange.com/ С тегом, Google-Spreadsheets –

+0

@bp_ - здесь есть 7.700+ [тег: google-apps-script]; SO - правильное место. Это не значит, что это хороший вопрос для форума, конечно. – Mogsdad

+1

Возможный дубликат [Конвертировать VBA в скрипт приложения Google?] (Http://stackoverflow.com/questions/25877139/convert-vba-to-google-app-script) – Mogsdad

ответ

0

Наиболее важным фактором, если вы хотите сделать это в том, что приложения Google Scripts использует JavaScript, в то время как Excel использует VBA. Таким образом, вы столкнетесь со следующими отличиями:

  • Ориентация объекта. Это грубое чрезмерное упрощение, но JavaScript объектно-ориентированный.
  • Синтаксис. VBA и JavaScript позволяют делать много похожих вещей w.r.t. связанных приложений электронной таблицы, но синтаксис будет отличаться.
  • Библиотеки. Если вы некоторое время кодировали в VBA, ваш «словарь» для разных терминов будет отличаться от «словаря», вам нужно будет создать в основном те же функции в скриптах Google Apps.

Так вот что я хотел бы сделать в вашем случае:

  1. Learn JavaScript (или, по крайней мере, проверить некоторые из основы)
  2. ЗАКАНЧИВАТЬ Служб Google Scripts: https://developers.google.com/apps-script/
  3. Check Сценарии Google Apps - электронные таблицы Справочная информация: https://developers.google.com/apps-script/reference/spreadsheet/

Более конкретно, посмотрите, можете ли вы найти конкретные ic code, вам нужно ссылаться на конкретный лист Google Spreadsheet и удалять строки.

Дайте мне знать, если это поможет.

0

Вам не нужно переписывать весь код. Вы можете повторно использовать старый код для доступа к Google Spreadsheets. Ищите openource GSpread.NET. Эта библиотека позволяет читать и записывать электронные таблицы Google с помощью Microsoft Excel API.

Использование CreateObject (GSpreadCOM.Application) вместо CreateObject (Excel.Application).

примеры GSpread.NET: http://scand.com/products/gspread/tutorial.html

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