FORMATACAO DADOS EXCELL
Bom Dia a todos.
Estou utilizando o seguinte código:
No código, onde está o caracter ?????????? preciso fazer com que a coluna 18 perca a formatação de TEXTO e fique como NUMERO.
Pois se eu pegar o valor que esta no TEXTO da planilha, ele virá com aqueles numeros HEXADECIMAL que o EXCELL adora gerar.
Se eu jogar o valor pra uma variável do tipo DOUBLE, o valor não irá bater com o que está na planilha.....
Eu preciso é [Ô]simular[Ô] (via código) nesta coluna, a formatação dos dados para o tipo NUMERICO do EXCELL mesmo. Como vou fazer isso????? Alguém me ajuda????
Estou utilizando o seguinte código:
Public Sub suLerArquivoExcel(ByVal vArquivo As String)
Dim objWorkbook As Excel.Workbook
Dim objWorkSheet As Excel.Worksheet
Dim objRow As Excel.Range
objExcel.Visible = False
Set objWorkbook = objExcel.Workbooks.Open(vArquivo, 0, True)
For Each objWorkSheet In objWorkbook.Worksheets
Dim intSair As Integer [ô]Utilizado para sair do excel caso tenha 3 linhas em branco para nao ler as 65000 linhas
Dim intLinhas As Integer [ô]Registra a qtde de linhas lidas
Dim intColunas As Integer [ô]Registra a qtde de colunas por tipo de documento
Dim arrColunas() As String [ô]Registra o nome das colunas
Dim intRegistros As Integer [ô]Qtde de registros inseridos
intSair = 0
intLinhas = 1
intColunas = 0
intRegistros = 0
ReDim arrColunas(99)
For Each objRow In objWorkSheet.Rows
If objRow.Cells(1).Text = [Ô][Ô] Then
ReDim arrColunas(99)
intColunas = 0
intSair = intSair + 1
Else
intSair = 0
[ô]Pega a Quantidade de colunas do Tipo de Documento
Dim objColuna As Excel.Range
Dim intSairColuna As Integer
ReDim arrColunas(99)
intSairColuna = 0
intColunas = 0
For Each objColuna In objRow.Cells
If objColuna.Text = [Ô][Ô] Then
intSairColuna = intSairColuna + 1
Else
intSairColuna = 0
End If
intColunas = intColunas + 1
[ô]objColuna.FormatConditions = adDouble
If intColunas = 18 Then
?????????????????????
End If
arrColunas(intColunas) = objColuna.Text
If intSairColuna = 3 Then Exit For
Next
intColunas = intColunas - 3
ReDim Preserve arrColunas(intColunas)
End If
intLinhas = intLinhas + 1
If intSair = 3 Then Exit For
DoEvents
Next
intLinhas = intLinhas - 3
Next
objWorkbook.Close
objExcel.Quit
End Sub
No código, onde está o caracter ?????????? preciso fazer com que a coluna 18 perca a formatação de TEXTO e fique como NUMERO.
Pois se eu pegar o valor que esta no TEXTO da planilha, ele virá com aqueles numeros HEXADECIMAL que o EXCELL adora gerar.
Se eu jogar o valor pra uma variável do tipo DOUBLE, o valor não irá bater com o que está na planilha.....
Eu preciso é [Ô]simular[Ô] (via código) nesta coluna, a formatação dos dados para o tipo NUMERICO do EXCELL mesmo. Como vou fazer isso????? Alguém me ajuda????
Creio q vc deve formatar assim:
NumberFormat = [Ô]0.00[Ô]
NumberFormat = [Ô]0.00[Ô]
Ou assim:
Dim Linha
Linha = 1
SuaPlanilha.Range([Ô]A[Ô] & Linha ).NumberFormat = [Ô]0.00[Ô]
Dim Linha
Linha = 1
SuaPlanilha.Range([Ô]A[Ô] & Linha ).NumberFormat = [Ô]0.00[Ô]
Ou ainda:
dim Delta
Plan6.Range([Ô]A[Ô] & Linha) = Format(Delta, [Ô]#,##0.00[Ô])
Bom, esses exemplos eu uso para transferir dados de um objeto no form para planilha ou de um banco para planilha. Veja bem, isso em VBA.
dim Delta
Plan6.Range([Ô]A[Ô] & Linha) = Format(Delta, [Ô]#,##0.00[Ô])
Bom, esses exemplos eu uso para transferir dados de um objeto no form para planilha ou de um banco para planilha. Veja bem, isso em VBA.
IRENKO, Muito Obrigado....
Funcionou perfeitamente o que eu queria/precisava.
Funcionou perfeitamente o que eu queria/precisava.
Tópico encerrado , respostas não são mais permitidas