Pergunte aqui
1

macro que salva planilha

perguntadas 2016-07-29 20:06:59 +0200

imagem do gravatar de Juan.rba

updated 2016-07-31 14:55:03 +0200

imagem do gravatar de Grafeno

criei uma macro para salvar uma planilha ( no caso é a primeira planilha do arquivo) como txt(csv), quando fui ver a macro, descobri q ela escreve o valor " 1 " para saber qual planilha ela deve salvar... troquei esse valor por 2 e vi q ela salva a segunda planilha do meu arquivo.

Descrição da imagem

tem a possibilidade de colocar esse valor numa celula e fazer a macro buscar la? tipo na planilha1 celula: A1 digitar o valor 2 e ela salvar a segunda planilha...

editar alterar tag assinalar como ofensivo fechar mesclar Excluir

Comentários

O Antônio @Grafeno me ajudou muito com uma questão semelhante, mas era pra buscar o nome do arquivo a ser salvo numa célula..., tentei aplicar o mesmo conceito mas da erro,

imagem do gravatar de Juan.rbaJuan.rba ( 2016-07-29 20:11:05 +0200 )editar

2 Respostas

1

respondidas 2016-07-30 15:00:09 +0200

imagem do gravatar de Grafeno

updated 2016-07-30 15:01:18 +0200

@Juan.rba,

Não sei exatamente como você tentou 'aplicar o mesmo conceito" da outra questão, mas é possível que o erro esteja no fato de você estar recuperando um texto (string) da célula e tetando atribui-lo a uma propriedade que pede um valor (value).

Portanto, assumindo que o número esteja na célula A1 de sua planilha "editor", o valor da célula deve ser obtido desta forma:

NumeroPlanilha = editor.getCellRangeByName("A1").Value

E, em seguida, passado ao argumento assim:

args1(0).Value = NumeroPlanilha


Atte,
Grafeno

editar assinalar como ofensivo Excluir Link mais

Comentários

@Grafeno,

muito obrigado, funcionou muito bem!

imagem do gravatar de Juan.rbaJuan.rba ( 2016-07-30 18:17:32 +0200 )editar
0

respondidas 2016-07-30 00:52:55 +0200

imagem do gravatar de sp24horas

updated 2016-09-12 16:21:28 +0200

Olá! Segue um exemplo para salvar como planilha. Adapte o seu código para salvar como um arquivo texto.

`REM  *****  BASIC  *****
'cria planilha com nome na célula A1
Sub Main
Dim Doc As Object
Dim Sheet As Object
Dim i as Integer
Dim nome as String
Doc = ThisComponent
Sheet = Doc.Sheets(0)
nome = Sheet.GetCellByPosition(0,0).string
'O exemplo acima referencia a primeira célula A1.
'Se fosse para gerar 5 planilhas semelhantes
'for i = 1 to 5
'nome = "Planilha"&i
If Doc.Sheets.hasByName(nome) Then
Sheet = Doc.Sheets.getByName(nome)
else
Sheet = Doc.createInstance("com.sun.star.sheet.Spreadsheet")
Doc.Sheets.insertByName(nome, Sheet)
End If
'Next
End Sub`
editar assinalar como ofensivo Excluir Link mais

Comentários

muito obrigado amigo, funcionou muito bem!

imagem do gravatar de Juan.rbaJuan.rba ( 2016-07-30 18:18:05 +0200 )editar
Login/Registrar para responder

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2016-07-29 20:06:59 +0200

Lidas: 434 vezes

Última atualização: Sep 12 '16