Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
#10438
Olá a todos,

Encontrei em um site um código que é mais ou menos o que eu preciso fazer e estou adaptando-o. Porém estou tendo algumas dificuldades com o código VBA.

O código funciona da seguinte maneira:

1- Eu faço uma seleção e clico no botão "WRITE DATA TO TEXT FILE".
Imagem


2- É salvo então um arquivo txt com a seleção.
Imagem


3- Porém os resultados apresentados não são exatamente da maneira que eu desejava.
Necessito que as separações entre as colunas sejam feitas por ; ao invés de , e que não apareçam esses " " entre os caracteres de texto. Já realizei algumas pesquisas na internet e tentei trabalhar no código, porém não consegui. Será que vocês poderiam me ajudar??
O arquivo desejado deve ficar assim:
Imagem



Segue o código:

Private Sub CommandButton1_Click()

Dim myFile As String, rng As Range, cellValue As Variant, i As Integer, j As Integer

myFile = Application.GetSaveAsFilename(InitialFileName:=vbNullString, FileFilter:="Text Files (*.data),*.data")
Set rng = Selection

Open myFile For Output As #1

For i = 1 To rng.Rows.Count
For j = 1 To rng.Columns.Count
cellValue = rng.Cells(i, j).Value

If j = rng.Columns.Count Then
Write #1, cellValue
Else
Write #1, cellValue;
End If
Next j
Next i

Close #1

End Sub




código original baixado em: http://www.excel-easy.com/vba/examples/ ... -file.html

Desde já agradeço a todos!
#10448
Experimente assim:
Código: Selecionar todos
Sub CommandButton1_Click()
Dim myFile As String, cellValue As String
Dim rng As Range
Dim i As Integer, j As Integer

myFile = Application.GetSaveAsFilename(InitialFileName:=vbNullString, FileFilter:="Text Files (*.data),*.data")
Set rng = Selection

Open myFile For Output As #1

For i = 1 To rng.Rows.Count
    For j = 1 To rng.Columns.Count
        If j = 1 Then
            cellValue = rng.Cells(i, j).Value
        Else
            cellValue = cellValue & ";" & rng.Cells(i, j).Value
        End If
    Next j
    Print #1, cellValue
Next i

Close #1

End Sub
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord