viernes, 14 de agosto de 2026

Con un click pasar datos ordenados a una planilla google sheet excel

     Dim http As Object

    Dim url As String

    Dim datos As String

    Dim codigoerlangenold As String ' 02

    Dim codigofabricaaa As String ' 03

    Dim codigoerlangennew As String ' 04

    Dim otroscodigosinn As String ' 05  El codigo de Repuestos Chile + el codigo que ahora viene de INN

    Dim codigospchile As String ' 05,1

    Dim codigoinnfabrica As String ' 05,2

    Dim descripcionn As String ' 06 Descripcion del producto

    Dim codigoclientee As String '07

    Dim clientecortocodcliente As String '07.1

    Dim clienteeee As String ' 08

    Dim clientecorto As String '081

    Dim ordendecompra As String '09

    Dim posordendecompra As String '091

    Dim ocmaspos As String '092


    Dim bzz As String '0100  es el BZ o compra a fabrica

    Dim posbzz As String '0101  es el BZ o compra a fabrica

    Dim bzzmasposbzz As String '0102  es el BZ o compra a fabrica

    

    Dim cantcomprada As String '0110  es el BZ o compra a fabrica

    Dim Fechasolicitadoo As String '0115  es la fecha solicitada   Texto178

    

    Dim historiall As String '0120 es el historial de la compra = cliente:cliente,oc:oc-pos, bz:bz-pos x cantidad fecha




'_______________________________________________________________________________________________________________________________________________________



' 01 es el modelo que esta en el PDV

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!MLFB) Or [Forms]![AWVs]![SeguimientoPosManualf3]!MLFB = "" Then

Modelo = ""

Else

Modelo = [Forms]![AWVs]![SeguimientoPosManualf3]!MLFB

End If


'02 Codigo Erlangen antiguo

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!CodErlangenOld) Or [Forms]![AWVs]![SeguimientoPosManualf3]!CodErlangenOld = "" Then

codigoerlangenold = ""

Else

codigoerlangenold = [Forms]![AWVs]![SeguimientoPosManualf3]!CodErlangenOld

End If



'03 Codigo de Fabrica

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!CodFab) Or [Forms]![AWVs]![SeguimientoPosManualf3]!CodFab = "" Then

codigofabricaaa = ""

Else

codigofabricaaa = [Forms]![AWVs]![SeguimientoPosManualf3]!CodFab

End If


'04 Codigo Erlangen NEW

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!CodErlangenNew) Or [Forms]![AWVs]![SeguimientoPosManualf3]!CodErlangenNew = "" Then

codigoerlangennew = ""

Else

codigoerlangennew = [Forms]![AWVs]![SeguimientoPosManualf3]!CodErlangenNew

End If


'05,1 Codigo SP Chile

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!Codigo_Spare_Part) Or [Forms]![AWVs]![SeguimientoPosManualf3]!Codigo_Spare_Part = "" Then

codigospchile = ""

Else

codigospchile = "Cod SP Chile:" & [Forms]![AWVs]![SeguimientoPosManualf3]!Codigo_Spare_Part & " "

End If


'05,2 Codigo INN fabrica

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!CodINN) Or [Forms]![AWVs]![SeguimientoPosManualf3]!CodINN = "" Then

codigoinnfabrica = ""

Else

codigoinnfabrica = "Cod INN Fab:" & [Forms]![AWVs]![SeguimientoPosManualf3]!CodINN & " "

End If

'05  otroscodigosinn

otroscodigosinn = codigospchile & codigoinnfabrica



'06 Descripción

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!DescripcionLARCH) Or [Forms]![AWVs]![SeguimientoPosManualf3]!DescripcionLARCH = "" Then

descripcionn = ""

Else

descripcionn = [Forms]![AWVs]![SeguimientoPosManualf3]!DescripcionLARCH

End If


'08 cliente

clienteeee = Me.ClienteAWB_F


On Error Resume Next

clientecorto = DLookup("NombreClienteCorto", _

    "Clientes", "ClienteBase ='" & clienteeee & "'")

On Error GoTo 0

'081

If IsNull(clientecorto) Or clientecorto = "" Then

clientecorto = ""

End If



'07 Codigo Cliente

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!CodigoCliente) Or [Forms]![AWVs]![SeguimientoPosManualf3]!CodigoCliente = "" Then

codigoclientee = ""

Else

codigoclientee = [Forms]![AWVs]![SeguimientoPosManualf3]!CodigoCliente

End If


'07.1 Cliente corto y  Codigo Cliente

If IsNull([codigoclientee]) Or codigoclientee = "" Then

clientecortocodcliente = ""

Else

clientecortocodcliente = clientecorto & " " & codigoclientee

End If


'09 Orden de Compra

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!OC) Or [Forms]![AWVs]![SeguimientoPosManualf3]!OC = "" Then

ordendecompra = ""

Else

ordendecompra = [Forms]![AWVs]![SeguimientoPosManualf3]!OC

End If


'091 Posicion Orden de Compra

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!POS_PDV) Or [Forms]![AWVs]![SeguimientoPosManualf3]!PosOC = "" Then

posordendecompra = ""

Else

posordendecompra = [Forms]![AWVs]![SeguimientoPosManualf3]!POS_PDV

'posordendecompra = "pruebaa"

End If


'092 OC mas Posicion

If IsNull([ordendecompra]) Or ordendecompra = "" Then

ocmaspos = ""

Else

ocmaspos = " oc " & ordendecompra & "-" & posordendecompra

End If



'    Dim  As String '0101  es el BZ o compra a fabrica




'0100 BZ o compra fabrica

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!BZ) Or [Forms]![AWVs]![SeguimientoPosManualf3]!BZ = "" Then

bzz = ""

Else

bzz = [Forms]![AWVs]![SeguimientoPosManualf3]!BZ

End If


'0101 Posicion bz o compra a fabrica

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!PosBZ) Or [Forms]![AWVs]![SeguimientoPosManualf3]!PosBZ = "" Then

posbzz = ""

Else

posbzz = [Forms]![AWVs]![SeguimientoPosManualf3]!PosBZ

End If


'0102 bz mas posicion

If IsNull([bzz]) Or bzz = "" Then

bzzmasposbzz = ""

Else

bzzmasposbzz = " bz " & bzz & "-" & posbzz

End If


'

'0110 cantidad comprada

If IsNull([Forms]![AWVs]![SeguimientoPosManualf3]!QSolProy) Or [Forms]![AWVs]![SeguimientoPosManualf3]!QSolProy = "" Then

cantcomprada = ""

Else

cantcomprada = " x " & [Forms]![AWVs]![SeguimientoPosManualf3]!QSolProy

End If


'    Dim Fechasolicitadoo As Date '0115  es    Texto178

'0115 la fecha solicitada

If IsNull(Texto178) Or Texto178 = "" Or Texto178 = 0 - 0 - 0 Then

Fechasolicitadoo = ""

Else

Fechasolicitadoo = " F: " & Texto178

End If



historiall = clientecorto & " " & ocmaspos & bzzmasposbzz & cantcomprada & Fechasolicitadoo


    url = "https://script.google.com/macros/s/AKfycbwcviHmP9Mi5rhE_kJ4VjfpdoOgCUBxi5MuXfA8Xwtw1jUL-WU3oglLC_7cSU0zLVMp/exec"

    


               

    datos = "modelo=" & EncodeURL(Modelo) & _

            "&erlangenantiguo=" & EncodeURL(codigoerlangenold) & _

            "&modelofabrica=" & EncodeURL(codigofabricaaa) & _

            "&erlangennuevo=" & EncodeURL(codigoerlangennew) & _

            "&otroscodigosinn=" & EncodeURL(otroscodigosinn) & _

            "&descripcion=" & EncodeURL(descripcionn) & _

            "&codcliente=" & EncodeURL(clientecortocodcliente) & _

            "&historial=" & EncodeURL(historiall)




'            "historial=" & EncodeURL(CodClientee)




    Set http = CreateObject("MSXML2.ServerXMLHTTP.6.0")


    http.Open "POST", url, False

    http.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"

    http.send datos



y finalmente en el google sript
se ponen los siguientes datos:




function doPost(e) {
  try {

    var sheet = SpreadsheetApp
      .openById("1wSBpuLrq-3L5JQEsXKIbXvM6HAgPYuVQYobS3zNwC_E")
      .getSheetByName("DATOS");

    var modelo  = e.parameter.modelo;
    var erlangenantiguo = e.parameter.erlangenantiguo;
    var modelofabrica = e.parameter.modelofabrica;
    var erlangennuevo = e.parameter.erlangennuevo;
    var otroscodigosinn  = e.parameter.otroscodigosinn;
    var descripcion = e.parameter.descripcion;
    var codcliente = e.parameter.codcliente;
    var historial = e.parameter.historial;

    var ultimaFila = sheet.getLastRow();
    var fila = (ultimaFila == 0) ? 1 : ultimaFila + 1;

    sheet.getRange(fila, 1, 1, 8).setValues([[
      modelo,
      erlangenantiguo,
      modelofabrica,
      erlangennuevo,
      otroscodigosinn,
      descripcion,
      codcliente,
      historial
   ]]);

    return ContentService.createTextOutput("OK");

  } catch(error) {
    return ContentService.createTextOutput("ERROR: " + error.toString());
  }
}


Con un click pasar datos ordenados a una planilla google sheet excel

     Dim http As Object     Dim url As String     Dim datos As String     Dim codigoerlangenold As String ' 02     Dim codigofabricaaa A...