Hola Jhonatan:
Entiendo que estas manejando un DW composite:
tabla1 Cabecera
tabla2 Detalle
1. No creo que se pueda exportar a Excel ambos DW al mismo tiempo; debes hacerlo de manera separada. La forma de referenciar un DW dentro de un composite, se realiza con la función GETCHILD(). Está documentado en el foro, por ejemplo en:
http://www.lawebdelprogramador.com/news/mostrar_new.php?id=73&texto=Power+Builder&n1=115294&n2=1&n3=0&n4=0&n5=0&n6=0&n7=0&n8=0&n9=0&n0=0
2. Una vez que puedas manipular cada DW, debes exportar el registro actual de la cabecera (en un formato similar a Freeform), especificando exactamente en qué celda de excel deseas pegar esos valores. Para eso se usa:
//Insertar cadenas o números en una fila y columna cualquiera
xlsub.Cells(ll_r,ll_c).Value = \"Un texto cualquiera\"
xlsub.Cells(ll_r,ll_c).Value = 10
Te recomiendo leas los post en:
http://www.lawebdelprogramador.com/news/mostrar_new.php?id=73&texto=Power+Builder&n1=152872&n2=1&n3=0&n4=0&n5=0&n6=0&n7=0&n8=0&n9=0&n0=0
3. Luego el detalle, debes exportarlo a excel (en un estilo grid) de la forma que mencionabas en tu primer post.
Lo que no entiendo, es para que quieres llevar algo de PB a Excel, buscar en Excel y luego volver a PB. ¿No sería mejor hacer todo eso en PB?, y el resultado obtenido en PB recién llevarlo a Excel?.
En todo caso, no sé cómo podrías buscar "algo en Excel" desde PB.