Re: Powerpoint: desencadenar pegar portapapelesHola @hogi ,
Mi forma favorita de hacer cosas como esta (en mi Mac) es usar RunProgram() para ejecutar AppleScript. Aquí está mi proceso allí, que espero sea útil si se está adaptando para Windows.
En el lado de JMP, vamos a usar RunProgram() para ejecutar un script bash que haremos:
Run Program( Executable( "~/Desktop/pastePowerpoint" ) );
Para hacer el script de bash, abrimos un archivo de texto sin formato y escribimos la invocación de bash para AppleScript, y luego el AppleScript. Aquí está el contenido completo de ese archivo de texto sin formato:
#!/bin/bash
osascript <<END tell="" application=""></END>
Una vez que guardamos eso (sin extensión), necesitamos hacerlo ejecutable. En Terminal, podemos ejecutar lo siguiente (suponiendo que esté en su escritorio):
chmod 755 ~/Desktop/pastePowerpoint
¡Y eso es!¡Espero que esto ayude!
@Julian
Re: Powerpoint: desencadenar pegar portapapelesGracias @Julian .
Con respecto a Windows, ChatGPT sugirió usar un script de PowerShell:
(suponiendo que el script JSL y el código ps1 se guarden en la misma carpeta)
Try(Current Report()<< Copy Picture();
If( Host is( "Windows" ),
PowerShellScriptName= Convert File Path( "", windows ) ||"PastePicture.ps1";
runOptions = "-File \!""|| PowerShellScriptName||"\!"";
MyResult = Run Program(
Executable( "PowerShell.exe" ),
Options( {runOptions} ),
ReadFunction( Function( {this}, Write( this << read ) ) )
)
));pegarImagen.ps1:
$ppt = New-Object -ComObject PowerPoint.Application
$ActivePPT = $ppt.ActiveWindow
if ($ActivePPT -eq $null) {
return "no active ppt"
} else {
$slide=$activeppt.Presentation.Slides($ppt.ActiveWindow.Selection.SlideRange.SlideNumber)
$shape = $slide.Shapes.Paste()
return 0
}
Powerpoint: desencadenar pegar portapapeles¿Jmp tiene la posibilidad de activar "pegar portapapeles" en Powerpoint, después de copiar un gráfico en el portapapeles?
Modelado Estadístico AvanzadoOrganización de contenidoDiseño de experimentosLa personalización en masaCompartir y comunicar resultadosRe: Powerpoint: desencadenar pegar portapapelesAgregué la versión de Windows (a través de PowerShell) a la barra de herramientas de GraphBuilder:
Barra de herramientas del generador de gráficos
