Tenho esta macro que já faz isto…
sub PegarStringCelula
Dim Plan As Object
Dim Var1 As String
Plan = thisComponent.sheets(2)
Var1 = plan.getCellByPosition(0,0).String
end Sub
Porem gostaria de informar o endereço (Planilha.Celula), na chamada da Macro, tipo:
sub PegarStringCelula (x As String)
Dim Plan As Object
Dim Var1 As String
Plan = thisComponent.sheets
Var1 = plan.getCellByPosition( x ).String
end Sub
Logicamente a alteração que fiz, não funciona, Como consertar?
Vide complemento na Resposta do @Grafeno.
@Grafeno, me desculpe, me deparei com outro problema, a célula fonte (exemplo: Planilha.A1), é uma Variável, então não sei o endereço.
Em linguagem pratica seria isto:
Option Explicit
Private Var1 As String
Sub PegarStringCelula 'Pegar da célula atual'
Usar o Endereço atual da célula
Var1 = seu conteúdo
End Sub
Ola @Grafeno, após sua 2a. resposta considerei resolvida (sem testar) e por motivos de prioridade, congelei meu projeto, e voltei agora, porém não estou conseguindo resultado.
Esta macro: Funciona
Sub PegarStringCelula2
Dim Plan As Object
Dim Var1 As String
x1 = Split( "Planilha1.B6", "." )
Plan = thisComponent.Sheets.getByName( x1(0) )
Var1 = Plan.getCellRangeByName( x1(1) ).String
msgbox Var1
End Sub
Mas com a dica dada não esta funcionando, sabe dizer o motivo:
Sub Main2
Call PegarStringCelula ("Planilha1.B6")
MsgBox Var1
End Sub
Sub PegarStringCelula (x As String)
Dim Plan As Object
Dim Var1 As String
x1 = Split( x, "." )
Plan = thisComponent.Sheets.getByName( x1(0) )
Var1 = Plan.getCellRangeByName( x1(1) ).String
End Sub