Imam problem oko exporta podataka iz EXCEL-a u GSI-CSV-TXT formate. Zaista sam ogromno vreme potrosio na ovome guglajuci, dali sam pogrersne termine trazio ili sta je ne znam ali sam se bar potrudio i ovo sam najblize nasao.
Delimicno sam nasao resenje (cod) koje je @Jpeca ponudio @mirjanagb jos davne 2008 godine.
Code:
Sub TextStreamTest()
Const ForReading = 1, ForWriting = 2, ForAppending = 3
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0 'ASCII ili Unicode
Dim fs, f, ts
Dim strFileName As String
Dim rRange As Range
Dim rw As Long, cl As Integer
Dim strRed As String
Application.DisplayAlerts = False
Set rRange = Application.InputBox(Prompt:= _
"Zadaj opseg koji treba sacuvati kao text file ", _
Title:="SPECIFY RANGE", Type:=8)
On Error GoTo 0
Application.DisplayAlerts = True
If rRange Is Nothing Then
Exit Sub
Else
Set fs = CreateObject("Scripting.FileSystemObject")
strFileName = "C:\TEMP\test1.txt"
fs.CreateTextFile strFileName 'Create a file
Set f = fs.GetFile(strFileName)
Set ts = f.OpenAsTextStream(ForWriting, TristateUseDefault)
' Petlja za upis u Text file
For rw = 1 To rRange.Rows.Count
strRed = rRange.Cells(rw, 1).Text ' Prva celija iz reda se obavezno upisuje
For cl = 2 To rRange.Columns.Count ' Ostale celije iz reda
strRed = strRed & "," & rRange.Cells(rw, cl).Text 'dodavanje zareza za razdvajanje i vrednosti iz celije
Next cl
If rw < rRange.Rows.Count Then
ts.Writeline strRed
Else
ts.Write strRed
End If
Next rw
ts.Close
End If
End Sub
Pokusao sam u kod da ubacim rang celija ciji se red ne menja dok broj celije menja u zavisnosti od popunjenih celija.
Konkretno u mom primeru koji sam poslao za GSI format rang bi bio od R3:R-zadnja ispunjena celija, a za CSV i TXT format rang bi bio T3:T-zadnja ispunjena celija.
Kod koji sam mislio da ubacim je ovaj
LastRow = .Cells(.Rows.Count, "G").End(xlUp).Row
Range("G7:(LastRow = .Cells(.Rows.Count, "G").End(xlUp).Row)".Select
ali sam se izgubio u svemu ovome
I drugi problem je sto bih hteo da me pita za ime fajla a ne da on sam snimi test1.
Zadnji kod koji se nalazi u samom fajlu pod naslovom TXT trazi rang i pita me za ime fajla mi ne daje zeljeni rezultat