Trouble Converting Excel Macro to Script for Invoice Tracker

Viewed 18

I am trying to convert an excel macro to Apps Script and am running into trouble getting it to work. Here is the link to the video I am trying to convert from: https://www.youtube.com/watch?v=spzCvQHCWqY&list=PLA3JEasWtYad0OeX78k0gFhxm5qnnaD57&index=2

The full Excel Script is here:

Sub RecordofInvoice()
Dim invno As Long
Dim custname As String
Dim amt As Currency
Dim dt_issue As Date
Dim term As Byte
Dim nextrec As Range

invno = Range("C3")
custname = Range("B10")
amt = Range("I41")
dt_issue = Range("C5")
term = Range("C6")

Set nextrec = Sheet3.Range("A1048576").End(xlUp).Offset(1,0)

nextrec = invno
nextrec.Offset(0,1) = custname
nextrec.Offset(0,2) = amt
nextrec.Offset(0,3) = dt_issue
nextrec.Offset(0,4) = dt_issue + term

End Sub

The Google Sheets version that I have so far which is not working is below:

function RecordofInvoices() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var row = SpreadsheetApp.getSelection().getCurrentCell().getRow();
  var column = sheet.getMaxColumns();

  var sheet2 = SpreadsheetApp.getActiveSpreadsheet();
  SpreadsheetApp.setActiveSheet(sheet2.getSheets()[2])

  var trackno
  var invno
  var custname
  var amt
  var dt_issue
  var term
  var nextrec = sheet2.getRange(row, column).getNextDataCell(SpreadsheetApp.Direction.PREVIOUS).offset(1, 0).activate();

  trackno = sheet.getRange("C2")
  invno = sheet.getRange("C3")
  custname = sheet.getRange("B10")
  amt = sheet.getRange("I39")
  dt_issue = sheet.getRange("C6")
  term = sheet.getRange("C7")
  
  nextrec = trackno
  nextrec.offset(0,1) = invno
  nextrec.offset(0,2) = custname
  nextrec.offset(0,3) = amt
  nextrec.offset(0,4) = dt_issue
  nextrec.offset(0,5) = dt_issue + term

}

Thank you for the help!

0 Answers
Related