Infelizmente não, o Excel abre vazio, sem nenhuma planilha. A função
oApp.PropGetWorkbooks(oWorkbooks) funciona, portanto existe contexto
para operar, mas não consigo inserir planilhas.
Fazendo uma analogia a abertura de arquivos, primeiro pega-se o
contexto com oApp.PropGetWorkbooks( oWorkbooks ), utilizando variável
da classe EXCEL_Workbooks, e depois abre-se um Workbook específico com
oWorkbooks.Open(..., oWorkbook), onde o oWorkbook é da classe
EXCEL_Workbook, e finalmente pega-se a planilha ativa com
oApp.PropGetActiveSheet( oWorksheet ).
Se a regra estrutural for a mesma, na abertura do Excel eu tenho apenas
o contexto EXCEL_Workbooks, seria necessário criar um workbook
específico EXCEL_Workbook, e depois criar as planilhas EXCEL_Worksheet.
Mas não encontrei a sequencia de rotinas corretas, nem sei se estou
certo na minha analogia.
Sds,
Erasmo
Ricardo Gomes wrote:
Qdo o Excel é iniciado ele já não
vem com uma planilha nova? Se, após a chamada da função
Excel__Application.PropSetVisible(TRUE), não vier uma planilha aberta,
tente usar a função Add da classe
Excel_Workbooks. Nunca precisei abrir um
novo workbook, mas acredito que essa função sirva para isso.
-----
Original Message -----
Sent: Friday, October 28, 2005 12:20 PM
Subject: Re: RES: RES: [sqlwin] Crair arquivo XLS
Fiz os testes com CTD 1.5.1 PTF 6, Microsoft Excel 9.0 Library e Excel
2000, e funcionou tudo. Agora outra dúvida, tem como ao invés de abrir
um arquivo existente, criar um novo arquivo? Não encontrei rotinas para
criar um novo Workbook diretamente.
Sds,
Erasmo
--
|
Erasmo
Bispo de Oliveira Junior
Gerente de
Pesquisa e Desenvolvimento
|
> wrote:
Salve Washington.
Tem razão colega. Utilizei a função Call oApp.PropSetVisible( TRUE ),
mencionado pelo colega Ricardo Gomes e o Excel abriu com a planilha. Mas a
função do Lairton para transferir os dados para uma table child não
funciona. Retorna erro de abertura.
Se alguem tiver mais alguma sugestão agradeço.
[[]]
Ledo
-----Mensagem original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Em nome
de WASHINGTON LUIZ SAMPAIO MARQUES
Enviada em: quinta-feira, 27 de outubro de 2005 05:45
Para: sqlwin@virtualand.net
Assunto: Res: RES: [sqlwin] Crair arquivo XLS
Caro Ledo,
Na verdade sua planilha está aberta porem o objetivo não é enxerga-la, e sim
manipula-la, assim vc pode capturar o conteudo da planilha para seu form e
vice-versa. segundo o colega da lista existe uma função que deixa visivel a
planilha aberta oculta, se não me engano é alguma função do objeto oApp,
veja se isso lhe ajuda, mas não esqueça que com a função abrirarquivo do
exemplo do Lairton a planilha já está aberta porem não visível.
[]
Washington Marques
<<Ledo>> <[EMAIL PROTECTED]> Escrito :
Salve Ricardo.
Agradeço muito se puder me ajudar. Na verdade quando crio a APL no
Wizard ActiveX, fico meio em duvida do que devo marcar. Tentei seguir
o exemplo do nobre colega Lairton mas estou emperrado por aqui.
Consultei as msg da lista de alguns anos atrás e percebi que muita
gente ralou com isso mas não encontrei uma solução tipo EURECA.
Zerei tudo... e tentei recriar a APL do Excel mas esbarro num erro de
duplicidade de constantes. Ao depurar percebi que é declarada a mesma
constante na APL MSOffice 11.0 e no Excel 11.0. Mas eu só
carreguei o Excel no Wizard e mesmo assim ele cria uma APL MSOffice
11.0. Então eliminei a declaração da apl do Office e compilou sem
erro. Mas não abre uma planilha.
Na verdade eu só preciso que um relatório seja salvo no formato excel.
Tentei usar a função SalReportPrintToFile mas o resultado fica uma
bagunça.
Realmente estou a deriva e não encontro documentação que fale a
respeito.
Agradeço se puder me ajudar
[[]]
Ledo
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]] Em nome de Ricardo GomesEnviada
em: quarta-feira, 26 de outubro de 2005
11:59Para: [EMAIL PROTECTED]: Re: [sqlwin] Crair arquivo
XLS
Amigo, utilizo ActiveX com Excel e, para abrir a tela do Excel, eu
faço um Call oApp.PropSetVisible( TRUE ), sendo que oApp é uma
instância de Excel__Application. Será que não está faltando isso? Se
vc quiser, mando-te um exemplo de como faço.
----- Original Message -----
From: <<Ledo>>
To: sqlwin@virtualand.net
Sent: Tuesday, October 25, 2005 11:41 PM
Subject: RES: [sqlwin] Crair arquivo XLS
Salve Marcelo.
Peço desculpas pelo meu erro. Realmente ele é aberto como um processo.
Debugando o exemplo, percebi que o Excel é aberto como processo no
Windows XP.
Mas não sei porque não consigo abrir a planilha.
Outra coisa que percebi é que a tentativa de abrir tantas vezes a
mesma planilha resulta num novo processo.
O exemplo do Lairton não encerra o excel aberto. Mas isso não seria
problema, bastaria acrescentar um comando a mais.
O problema todo é que a infeliz da planilha não abre e não consigo
saber porque.
Não creio que seja do windows ou da versão pois como dito o Excel é
aberto normalmente. Meu defeito é não entender as classes com que
estou trabalhando.
Ainda espero que algum colega possa nos ajudar.
[[]]
Ledo
______________________________
EMPREL, http://www.recife.pe.gov.br
==============================================
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e com o comando a seguir no
corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================
==============================================
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e
com o comando a seguir no corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================
--
|
Erasmo
Bispo de Oliveira Junior
Gerente de
Pesquisa e Desenvolvimento
|
--
|
Erasmo
Bispo de Oliveira Junior
Gerente de
Pesquisa e Desenvolvimento
|
|