FAZER FUNCIONAR TANTO COM EXCEL 03 E 07
Bom dia!
Outro probleminha que estou encontrando é o seguinte (na verdade tenha mais algumas e vou perguntar tudo aqui para não entupir o forum com um monte de post):
1º - Estou desenvolvendo um programa de controle de Ordem de Serviço para automatizar o controle manual daqui. Me pediram para continuar usando o modelo do excel. Eu estou desenvolvendo em uma pc que tem o excel 2007. Mas esse programa também vai rodar em máquinas que tem o excel 03 (e possivelmente em uma que tem um outro excel que deve ser o XP ou coisa parecida)....
A dúvida é o seguinte: Como eu faço para o meu programinha funcionar tanto com o excel 2007 e 2003??? (Eu não uso uma ferramenta de relatório, tipo crystal,porque sinceramente....eu não sei usar!!! )
2º - A outra dúvida é que tenho no momento é: como eu trato o botão cancelar do open folder dialog????? Toda vez que clico para escolher uma pasta e seleciono uma pasta qualquer, mas desisto e clico em cancelar, o meu programa processa, pois eu faço a verificação se um caminho foi escolhido, e neste caso como eu selecionei uma pasta, ele processa, mas na verdade eu cliquei em cancelar.....no vb6 tinha alguma propriedade parecida para cancelar, mas não lembro agora.
Acho que é só por enquanto.
Obrigado.
Outro probleminha que estou encontrando é o seguinte (na verdade tenha mais algumas e vou perguntar tudo aqui para não entupir o forum com um monte de post):
1º - Estou desenvolvendo um programa de controle de Ordem de Serviço para automatizar o controle manual daqui. Me pediram para continuar usando o modelo do excel. Eu estou desenvolvendo em uma pc que tem o excel 2007. Mas esse programa também vai rodar em máquinas que tem o excel 03 (e possivelmente em uma que tem um outro excel que deve ser o XP ou coisa parecida)....
A dúvida é o seguinte: Como eu faço para o meu programinha funcionar tanto com o excel 2007 e 2003??? (Eu não uso uma ferramenta de relatório, tipo crystal,porque sinceramente....eu não sei usar!!! )
2º - A outra dúvida é que tenho no momento é: como eu trato o botão cancelar do open folder dialog????? Toda vez que clico para escolher uma pasta e seleciono uma pasta qualquer, mas desisto e clico em cancelar, o meu programa processa, pois eu faço a verificação se um caminho foi escolhido, e neste caso como eu selecionei uma pasta, ele processa, mas na verdade eu cliquei em cancelar.....no vb6 tinha alguma propriedade parecida para cancelar, mas não lembro agora.
Acho que é só por enquanto.
Obrigado.
Cara, meu programa também trabalha com os dois Excels.
Eu coloco o seguinte no Dialog
[txt-size=5][txt-color=#0000f0]With[/txt-color] OpnFileDialog1
.Title = [txt-color=#e80000][Ô]Abrir arquivo Excel[Ô][/txt-color]
.Filter = [txt-color=#e80000][Ô]Arquivos do Excel (*.xls, *.xlsx)|*xls;*.xlsx[Ô][/txt-color]
[txt-color=#0000f0]End With
If[/txt-color] OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK [txt-color=#0000f0]Then[/txt-color]
[txt-color=#007100][ô]Código a ser executado[/txt-color]
[txt-color=#0000f0]End If[/txt-color][/txt-size]
Eu coloco o seguinte no Dialog
[txt-size=5][txt-color=#0000f0]With[/txt-color] OpnFileDialog1
.Title = [txt-color=#e80000][Ô]Abrir arquivo Excel[Ô][/txt-color]
.Filter = [txt-color=#e80000][Ô]Arquivos do Excel (*.xls, *.xlsx)|*xls;*.xlsx[Ô][/txt-color]
[txt-color=#0000f0]End With
If[/txt-color] OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK [txt-color=#0000f0]Then[/txt-color]
[txt-color=#007100][ô]Código a ser executado[/txt-color]
[txt-color=#0000f0]End If[/txt-color][/txt-size]
Mas como você faz referência ao excel 2003???
Eu uso o excel para imprimir a ordem de serviço. Neste caso especÃfico, eu não uso o open file dialog. Eu uso um objeto do tipo New Microsoft.Office.Interop.Excel.Application
Massss da erro quando tento fazer isso em um pc com excel 2003, pois o que está referenciado no projeto é o Excel 2007.
Oque eu preciso saber é como eu referencio os dois tipos? Ou melhor...tem como via run time, descobrir qual biblioteca está instalada e daà referenciar no projeto???? (espero que agora eu tenha explicado melhor)
Se eu conseguir resolver esse problema, já seria de grande ajuda!
Eu uso o excel para imprimir a ordem de serviço. Neste caso especÃfico, eu não uso o open file dialog. Eu uso um objeto do tipo New Microsoft.Office.Interop.Excel.Application
Massss da erro quando tento fazer isso em um pc com excel 2003, pois o que está referenciado no projeto é o Excel 2007.
Oque eu preciso saber é como eu referencio os dois tipos? Ou melhor...tem como via run time, descobrir qual biblioteca está instalada e daà referenciar no projeto???? (espero que agora eu tenha explicado melhor)
Se eu conseguir resolver esse problema, já seria de grande ajuda!
Cara, o problema é que o VS2010 formece a biblioteca Microsoft Excel 12.0 Object Library.
Então, o Excel 2003 sempre dá erro porque esta biblioteca é mais para o 2007 em diante.
eu resolvi este problema aqui nas máquinas com Excel 2003, instalando o Office 2003 Update: Redistributable Primary Interop Assemblies.
Acho que o link é este: Office 2003 Update: Redistributable Primary Interop Assemblies
Depois de instalar esta biblioteca na máquina com Excel 2003, deve funcionar.
Espero ter ajudado.
Então, o Excel 2003 sempre dá erro porque esta biblioteca é mais para o 2007 em diante.
eu resolvi este problema aqui nas máquinas com Excel 2003, instalando o Office 2003 Update: Redistributable Primary Interop Assemblies.
Acho que o link é este: Office 2003 Update: Redistributable Primary Interop Assemblies
Depois de instalar esta biblioteca na máquina com Excel 2003, deve funcionar.
Espero ter ajudado.
Tópico encerrado , respostas não são mais permitidas