Problema en macro

4 envíos / 0 nuevos
Último envío
ecacciaguerra19
Imagen de ecacciaguerra19
Offline
última acción: Hace 2 años 8 meses
alta: 06/07/2021 - 15:16
Puntos: 35
Problema en macro

Buenas tardes toda la gente del foro

 

estoy aprendiendo todo el mundo de las vba, y tengo un problema en una macro que estoy armando.

es una macro que manda mensajes por app whatsapp web. en eso quiero mandar un link de la empresa donde trabajo.

pero el problema es que la macro me corta el link, no lo manda entero porque en uno de los casos el link contiene el signo #.. y en el otro caso tiene separaciones con el signo %.. como puedo solucionar esto para que me envie el link completo..

 

 

 

desde ya muchas gracias a todos.!

 

saludos

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 1 día 3 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
Sin ver el código es difícil

Sin ver el código es difícil de adivinar. ¿Puedes adjuntar un ejemplo?

 

 

 

 

 

------
Ya sé Excel, pero necesito más.

ecacciaguerra19
Imagen de ecacciaguerra19
Offline
última acción: Hace 2 años 8 meses
alta: 06/07/2021 - 15:16
Puntos: 35
Sub wapp_links()'Declaracion

Sub wapp_links()

'Declaracion de variables

Dim text, contact As String ' Variables de envio

Dim i As Long, pausa As Long 'Variable de itinerancia

Dim ws As Worksheet ' Variable de hoja de calculo

Dim wapp As Variant ' Variable de Applicacion

Dim rng As Range

Dim rut As Variant

'Selecciona la Hoja donde tiene que sacar los datos

rut = Sheets("Mandar Ms").Range(Range("C6"), Range("C6").End(xlDown)).SpecialCells(xlCellTypeVisible).Rows.Count

Set ws = Sheets("Mandar Ms")

Set rng = ws.Range("C6")

Set rut = ws.Range("D6")

'Rango Regantes Filtrados

rut = Sheets("Mandar Ms").Range(Range("C6"), Range("C6").End(xlDown)).SpecialCells(xlCellTypeVisible).Rows.Count

pausa = ws.Range("B3").Value * 1000

If Application.WorksheetFunction.CountA(ws.Range("A6:A1000000")) = 0 Then

    MsgBox "No hay URLS para seleccionar", vbOKOnly

    Exit Sub

End If

'Abre Chrome para ejecutar las paginas

Do Until rng.Offset(i, 0) = ""

    text = "C:\Program Files\Google\Chrome\Application\chrome.exe -url " & rng.Offset(i, 0)

    Range("B6").NumberFormat = "@"

    Shell (ht)

    Espera (pausa)

    Call SendKeys("~", True) 'Envia el mensaje

    i = i + 1

Loop

Shell "taskkill /IM chrome.exe"

MsgBox "Mensajes Enviados!" & vbNewLine & vbNewLine & "Revisa tu whatsapp para comprobar los resultados", vbOKOnly, "Fin del procedimiento"

Set ws = Nothing

End Sub

 

 

 

ese es el codigo que estoy usando 

el problema lo tengo cuando intento mandar el url siguiente:

https://www.irrigacion.gov.ar/boleto/boletoOnline/#/A/servicio/A/      (la macro me manda hasta la / antes de #.. y lo mismo me hace con otro link que contiene el signo %)

(lo manda como se creo el hipervinculo ahora desde la pagina y no completo

 

 

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 1 día 3 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
entrecomillado

El problema es que al encontrar un caráctes especial lo interpreta como que ahí acaba la ruta.

Para que considere toda la ruta como una unidad, entecomíllala

Para introducir unas comillas dentro de tu texto, que también se define entre comillas, tienes que poner las comillas dos veces

es decir, prueba a modificar esta línea de tu código de la siguiente manera.

text = "C:\Program Files\Google\Chrome\Application\chrome.exe -url """ & rng.Offset(i, 0) & """"

 

------
Ya sé Excel, pero necesito más.