Comprar a Coleção de 15.000 Macros, Funções e Fórmulas do Excel        Dicas 


Pergunta:

Na coluna A, no range A1:An disponho de caracteres numéricos sob a forma de strings. Tenho então dois problemas a resolver :

a) preciso converter os strings em números para ser possível operar com os mesmos.

b) o range a1:an é variável de forma que n pode assumir quaisquer valores.

Exemplificando : n pode assumir a seqüência de valores
15;150;76... resultando nos ranges
a1:a15(n = 15);
a1:a150(n =150);
a1:a76(n=76); etc...

Como solucionar esse problema ?
Resposta:

O range a1:an tem as características de um range dinâmico, capaz de espichar ou de encolher.

Para resolver o problema do range dinâmico :
1)em sheet1 selecione os dados na coluna A (A1:An)
2)<Inserair <Nome<Definir
Name: RngDyn será o nome do range;
Refers to: =DESLOC(Sheet1!$A$1;0;0;CONT.VALORES(sheet1!$A:$A);1)
<Add <OK

Em módulo1 escreva a rotina : ou copie e cole

Sub TransfSeuString( )
Worksheets(1).Select
RngDyn.Select
For Each Cell in Selection
Cell.Value = CDBL(cell.value)
Next
End Sub