RETIRAR NUMERO DE TEXTO
Em uma tabela tenho registros assim:
RETENTOR R2 VITON 60,00X80,00X10,00MM
GAXETA U1 POLIURET. 70,00X58,00X6,50 MM
em um unico campo
preico deixar assim:
campo1 campo2 campo3 campo4
RETENTOR R2 VITON 60,00 80,00 10,00
GAXETA U1 POLIURET. 70,00 58,00 6,50
como faço isso?
a tabela eh access.
RETENTOR R2 VITON 60,00X80,00X10,00MM
GAXETA U1 POLIURET. 70,00X58,00X6,50 MM
em um unico campo
preico deixar assim:
campo1 campo2 campo3 campo4
RETENTOR R2 VITON 60,00 80,00 10,00
GAXETA U1 POLIURET. 70,00 58,00 6,50
como faço isso?
a tabela eh access.
Amigo, localiza o que precisa e use replace!
Veja se isto lhe ajuda!
Falow... T+
'Função Replace
'Substitui um caractere por outro
'Se quiser tirar todos os espaços...
Text1.Text = Replace(Text1.Text, " ","")
Veja se isto lhe ajuda!
Falow... T+
Isso é em VB, naum sei se vai rolar corretamente no Access. Dai vc faz a adaptação!
Private Function RetornarNumeros(ByVal iText As String) As String
Dim i As Long, j As String
For i = 1 To Len(iText)
Select Case Asc(Mid$(iText, i, 1))
Case 44, 48 To 57 ',46 - Ponto
j = j & Mid$(iText, i, 1)
End Select
Next
RetornarNumeros = j
End Function
Use split
Se eu usar a sub :
e o valor da textbox for por exemplo :
RETENTOR 125,00 X 130,00 X 12,70
ao aplicar a função obtenho este resultado:
125,00130,0012,70
Como faço para obter estes resultados:
1º resultado = 125,00
2º resultado = 130,00
3º resultado = 12,70
eu preciso separar os valores e n apenas traze-los juntos.
Obrigado
Private Function RetornarNumeros(ByVal iText As String) As String
Dim i As Long, j As String
For i = 1 To Len(iText)
Select Case Asc(Mid$(iText, i, 1))
Case 44, 48 To 57 ',46 - Ponto
j = j & Mid$(iText, i, 1)
End Select
Next
RetornarNumeros = j
End Function
e o valor da textbox for por exemplo :
RETENTOR 125,00 X 130,00 X 12,70
ao aplicar a função obtenho este resultado:
125,00130,0012,70
Como faço para obter estes resultados:
1º resultado = 125,00
2º resultado = 130,00
3º resultado = 12,70
eu preciso separar os valores e n apenas traze-los juntos.
Obrigado
Amigo, como o almarti falou! Use o Split!!!!
Veja este exemplo, a lógica é a mesma!!!!
[/c]
Falow... T+
Veja este exemplo, a lógica é a mesma!!!!
Private Sub Command1_Click()
Call ip("10.14.236.66")
End Sub
[c]Private Function ip(numero As String)
Dim v1, v2, v3, v4 As String
Dim I As Integer
For I = 0 To UBound(Split(numero, "."))
Select Case I
Case 0
v1 = Split(numero, ".")(I)
Case 1
v2 = Split(numero, ".")(I)
Case 2
v3 = Split(numero, ".")(I)
Case 3
v4 = Split(numero, ".")(I)
End Select
Next
MsgBox v1
MsgBox v2
MsgBox v3
MsgBox v4
End Function
[/c]
Falow... T+
caetano , faz asssim que é batata
Private Sub Command1_Click()
Dim a As String
Dim b() As String
Dim c() As String
Dim i As Integer
Dim pos As Integer
Dim posini As Integer
a = "125,00130,0012,703445,87"
c = Split(a, ",")
pos = InStr(1, a, ",")
posini = 1
ReDim b(UBound(c))
For i = 0 To UBound(c) - 1
pos = InStr(posini, a, ",")
pos = pos - posini + 1
pos = pos + 2
b(i) = Mid(a, posini, pos)
Me.Combo1.AddItem b(i)
posini = posini + pos
Next i
End Sub
na pressa de obter ajuda , poi isso ja esta atrasando meu trabalho esqueci de mencionar q a informação vem do cadastro de produtos.
A informação e a fusao de 4 campos
1- Descricao
2-Interno
3-Externo
4-Altura
Onde
Descrição= Retentor NBR
Interno=125,00
Externo=130,00
Altura=12,70
Entao recebo o Seguinte em um unico campo
RETENTOR NBR 125,00X130,00X12,70
Preciso desmembrar isso para q cada informação va para seu respectivo campo
desta forma:
Campo Descrição= Retentor NBR
Campo Interno=125,00
Campo Externo=130,00
Campo Altura=12,70
Ou seja
1 - separar oq eh texto , essa sera a descrição do produto
2-Pegar o Interno , este sera o primeiro numero depois da descrição
3 Pegar o Externo , este estara depois do "x" q vem apos o primeiro numero
4 Pegar a Altura , esta vem depois do "x" q vem apos o segundo numero
Eh isso
Espero q possam me ajudar
Obs o tamanho da descrição varia , desta forma nao posso por exemplo usar um padrao.
A informação e a fusao de 4 campos
1- Descricao
2-Interno
3-Externo
4-Altura
Onde
Descrição= Retentor NBR
Interno=125,00
Externo=130,00
Altura=12,70
Entao recebo o Seguinte em um unico campo
RETENTOR NBR 125,00X130,00X12,70
Preciso desmembrar isso para q cada informação va para seu respectivo campo
desta forma:
Campo Descrição= Retentor NBR
Campo Interno=125,00
Campo Externo=130,00
Campo Altura=12,70
Ou seja
1 - separar oq eh texto , essa sera a descrição do produto
2-Pegar o Interno , este sera o primeiro numero depois da descrição
3 Pegar o Externo , este estara depois do "x" q vem apos o primeiro numero
4 Pegar a Altura , esta vem depois do "x" q vem apos o segundo numero
Eh isso
Espero q possam me ajudar
Obs o tamanho da descrição varia , desta forma nao posso por exemplo usar um padrao.
Já tentou usar a função Val?
Não , como faço?
tenta isso:
..........................................................................................
.........................................................................................
..........................................................................................
Private Sub Form_Load()
a = "Ok ja foi" & "12,00X13,00X15,00"
For i = 1 To Len(a)
b = Mid(a, i, 1)
If IsNumeric(b) = False And b <> "," And UCase(b) <> "X" Or b = " " Then
c = c & b
ElseIf IsNumeric(b) = True Or b = "," Or UCase(b) = "X" Then
d = d & b
End If
Next i
Dim e() As String
e = Split(d, "X")
ReDim Preserve e(2)
'numeros
MsgBox e(0)
MsgBox e(1)
MsgBox e(2)
' palavras
MsgBox c
End Sub
.........................................................................................
Tópico encerrado , respostas não são mais permitidas