Todoexpertos.com
http://www.todoexpertos.com
La respuesta está en Internet
|
Información de la pregunta |
|
Título: |
llamadas de telefono desde excell
|
|
Experto: |
caranbis
|
|
Valoración: |
5
|
|
Fecha: |
21/12/2008
|
|
llamadas de telefono desde excell
|
|
|
Hola experto,
Me gustaria que al hacer click el la celda f7, excell pueda copiar automaticamente el valor en ella al clipbord e me abra un determinado programa llamado voipbuster al mismo tiempo? Ay yo puedo pegar el numero en el programa y llamar? Esta es la ruta del programa.
"E:\Archivos de programa\VoipBuster.com\VoipBuster\VoipBuster.exe"
El programa es un programa de llamadas por telefono.
carlosprettyboy@hotmail.com
Muchas gracias
Carlos Gomes
|
|
llamadas de telefono desde excell
|
|
|
Pega esto a la hoja correspondiente, NO EN UN MODULO, sino en la sección de código de la hoja donde están los teléfonos.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim x As Double
If Target.Address = "$F$7" Then
x = Shell("E:\Archivos de programa\VoipBuster.com\VoipBuster\VoipBuster.exe", vbNormalFocus)
'SendKeys "^v"
End If
End Sub
|
|
llamadas de telefono desde excell
|
|
|
Hola experto,
Gracias por tu ayuda, no sou muy avançado en excel, me poderias dizir donde esta la seccion de codigo, seguramente esta a delante de mis narizes e no la vea.
Pense que poderia ser donde se introduze las formulas pero no es.
Donde podera ser?
Gracias
carlosprettyboy@hotmail.com
Carlos Gomes
|
|
llamadas de telefono desde excell
|
|
|
Hola esperto,
Ey descubierto donde esta la seccion de codigo de la hoja pero me olvide de dizir que la celda f7 abarca 3 celdas (fgh 7) estan formateadas juntas.
Probe con una celda sola e funciona pero con las tre celdas juntas no me funciona, como puedo cambier el codigo para redirigirla a las 3 celdas juntas que tengo?
Muchas gracias
carlosprettyboy@hotmail.com
Carlos Gomes
|
|
llamadas de telefono desde excell
|
|
|
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim x As Double
If Target.Address = "$F$7" OR Then
x = Shell("E:\Archivos de programa\VoipBuster.com\VoipBuster\VoipBuster.exe", vbNormalFocus)
'SendKeys "^v"
End If
End SubPrivate Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim x As Double
If Target.Address = "$F$7" OR Target.Address = "$F$8" OR Target.Address = "$F$9" Then
x = Shell("E:\Archivos de programa\VoipBuster.com\VoipBuster\VoipBuster.exe", vbNormalFocus)
'SendKeys "^v"
End If
End Sub
SINO:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim x As Double
If Target.Address = "$F$7" OR Target.Address = "$G$7" OR Target.Address = "$H$7" Then
x = Shell("E:\Archivos de programa\VoipBuster.com\VoipBuster\VoipBuster.exe", vbNormalFocus)
'SendKeys "^v"
End If
End Sub
Alguno de esos dos supongo que te funcionará
|
|
llamadas de telefono desde excell
|
|
|
Ola experto,
Probe las 2 pero ninguna funciona.
Ey quitado la f7 e ahora solo me quieda g7 y h7 combinadas juntas.
Pero la rutina que me enviaste mismo quitando la f7 de la rutina continua sin funcionar quando le doy doble click a la celda que contiene el numero de telefono.
Bueno pense en una manera a ver se lo hace mas facil.
Cree un objeto a lado de la celda que es un pequeño telefono, podera ser mas facil entonces se creeamos un modulo (macro) que al darle click nos trayga el programa e nos copie la informacion de la celda g7 y h7 que estan combinadas juntas al clipboard?
Dime tu que piensas.
Un saludo
carlosprettyboy@hotmail.com
Carlos Gomes
|
|
llamadas de telefono desde excell
|
|
|
Pienso que habría un clic de más.
Intenta de nuevo con este if.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim x As Double
If activecell.row = 7 and (activecell.column = 6 or activecell.column = 7 or activecell.column = 8 ) Then
x = Shell("E:\Archivos de programa\VoipBuster.com\VoipBuster\VoipBuster.exe", vbNormalFocus)
'SendKeys "^v"
End If
End Sub
|
|
llamadas de telefono desde excell
|
|
|
Hola experto,
Fenomenal ahora funciona, pero no copia el valor de la celda automaticamente al clipboard (numero de telefono). Solamente me abre el programa.
Gracias por la ayuda.
carlosprettyboy@hotmail.com
Carlos Gomes
|
|
llamadas de telefono desde excell
|
|
|
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim x As Double
If activecell.row = 7 and (activecell.column = 6 or activecell.column = 7 or activecell.column = 8 ) Then
selection.copy
x = Shell("E:\Archivos de programa\VoipBuster.com\VoipBuster\VoipBuster.exe", vbNormalFocus)
'SendKeys "^v"
End If
End Sub
Ó: (Versión avanzada)
'"To use the DataObject in your code, you must set a reference to the Microsoft Forms 2.0 Object Library."
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim DataObj As New MSForms.DataObject
Dim x As Double
Dim stringtemp as string
If activecell.row = 7 and (activecell.column = 6 or activecell.column = 7 or activecell.column = 8 ) Then
stringtemp = activecell.value
DataObj.SetText stringtemp
DataObj.PutInClipboard
x = Shell("E:\Archivos de programa\VoipBuster.com\VoipBuster\VoipBuster.exe", vbNormalFocus)
'SendKeys "^v"
End If
End Sub
Tomado de:
http://www.cpearson.com/excel/Clipboard.aspx
Felix Año Nuevo.
Finaliza la pregunta.
|
|
Pregunta finalizada. Valoración: 5
|
|
|
Hola experto,
Muchas gracias por la ayuda, servio fenomenal la rutina avançada que me diste.
Era mesmo eso que queria.
Feliz año nueva para ti e los tuyos.
Carlos Gomes
|
Volver al mensaje
http://www.todoexpertos.com/categorias/tecnologia-e-internet/software-y-aplicaciones/microsoft-excel/respuestas/1977624/llamadas-de-telefono-desde-excell