i file vengono generati da un tool che gira sotto sun!
però è strano che siano diversi, perchè a parte STATUS che l'ho fatto io a mano, gli altri erano gli originali mmm
provo il codice sopra
Moderatori: Anthony47, Flash30005
ricky53 ha scritto:Ciao,
prova ad aprirli con blocco note e vedrai le differenze: alcuni hanno i dati sulla stessa riga altri su righe diverse e sono i due che sono quelli giusti.
PROVA, in caso di errore ... cambiali tu!!!
Fine:
'...
Close 1
MsgBox "Elaborazione INTERROTTA: " & Err & " - " & Err.Description
End Sub
Fine:
' ...
Close 1
MsgBox "Elaborazione INTERROTTA: " & " Errore n. " & Err & " - " & Err.Description & vbCrLf & vbCrLf & "Nome foglio: " & Mid(Left(NomeFile, Len(NomeFile) - 4), 15) & " - Indice Matrice: " & J
End Sub
ricky53 ha scritto:Ciao,
bene. Mi fa piacere averti risolto il problema.
Buona continuazione.
ricky53 ha scritto:Ciao,
non è più facile il passaggio da excel al file iniziale, vanno rimessi tutti i caratteri tolti e ricostruito il tracciato ... non è cosa da niente.
ricky53 ha scritto:Ciao,
si, i valori numeri davanti la descrizione li avevo tolti pensando che non ti servissero ... appena posso ti invio la versione modificata che riporta anche i valori numerici.
Option Explicit
Option Compare Text
Option Base 1
Public Dato_Letto As String, I As Long, I_App As Long, J As Integer, Appoggio0 As Integer, Appoggio1 As Integer, Appoggio2 As Integer, Appoggio3 As Integer
Sub Scrivi_Dati()
Dim Percorso As String, NomeFile As String, ElencoNomiFile()
ReDim ElencoNomiFile(6)
ElencoNomiFile(1) = "localvarsdescrCHECK.txt" ' <----- MODIFICATO in MS-DOS
ElencoNomiFile(2) = "localvarsdescrCOMMAND.txt" ' <----- MODIFICATO in MS-DOS
ElencoNomiFile(3) = "localvarsdescrCONTROL.txt" ' <----- MODIFICATO in MS-DOS
ElencoNomiFile(4) = "localvarsdescrLOCAL.txt" ' <----- MODIFICATO in MS-DOS
ElencoNomiFile(5) = "localvarsdescrSTATIC.txt" ' <----- ORIGINALE
ElencoNomiFile(6) = "localvarsdescrSTATUS.txt" ' <----- ORIGINALE
Percorso = "D:\TEMP\" ' <<------------- Inserire il nome del percorso in cui si trova il file
For J = 1 To 6
NomeFile = ElencoNomiFile(J)
Sheets(Mid(Left(NomeFile, Len(NomeFile) - 4), 15)).Select ' <<--------- Inserire un foglio con questo nome
Columns("A:A").ColumnWidth = 20
Columns("B:B").ColumnWidth = 40
Columns("C:C").ColumnWidth = 100
Columns("D:E").ColumnWidth = 25
Columns("F:F").ColumnWidth = 100
Rows("2:2").Select
ActiveWindow.FreezePanes = True
Cells.ClearContents
[A1] = "Variabile": [B1] = "ShortDescription": [C1] = "ValueDescription": [D1] = "DefaultText": [E1] = "DefaultTextShort": [F1] = "LongDescription"
On Error GoTo Fine
Open Percorso & NomeFile For Input As #1
I = 5
Do While Not EOF(1)
Line Input #1, Dato_Letto
If Dato_Letto <> "" Then
Elabora_Var
End If
Loop
Close 1
Next J
MsgBox "Fine Elaborazione"
Application.DisplayAlerts = True
Exit Sub
Fine:
Close 1
MsgBox "Elaborazione INTERROTTA: " & " Errore n. " & Err & " - " & Err.Description & vbCrLf & vbCrLf & "Nome foglio: " & Mid(Left(NomeFile, Len(NomeFile) - 4), 15) & " - Indice Matrice: " & J
End Sub
Sub Elabora_Var()
If Left(Dato_Letto, 1) <> "!" And Right(Dato_Letto, 1) = ";" Then
Dato_Letto = Replace(Dato_Letto, Chr(34), "", 1)
Cells(I, 1) = Replace(Dato_Letto, ";", "", 1)
End If
If InStr(1, Dato_Letto, "!GLE ShortDescription") > 0 Then
Dato_Letto = Replace(Replace(Dato_Letto, Chr(34), "", 1), ";", "", 1)
Appoggio1 = InStr(1, Dato_Letto, ":") + 2
Cells(I, 2) = Mid(Dato_Letto, Appoggio1)
End If
'....................................................................................
Elabora_ValueDescr ' <<==== Spostato (e MODIFICATO) il codice precedente in questa macro
'....................................................................................
If InStr(1, Dato_Letto, "!GLE DefaultText") > 0 Then
Dato_Letto = Replace(Replace(Dato_Letto, Chr(34), "", 1), ";", "", 1)
Appoggio1 = InStr(1, Dato_Letto, ":") + 2
If InStr(1, Dato_Letto, "!GLE DefaultTextShort") > 0 Then
Cells(I_App, 5) = Mid(Dato_Letto, Appoggio1)
Else
Cells(I_App, 4) = Mid(Dato_Letto, Appoggio1)
End If
End If
If InStr(1, Dato_Letto, "!GLE LongDescription") > 0 Then
Dato_Letto = Replace(Replace(Dato_Letto, Chr(34), "", 1), ";", "", 1)
Appoggio1 = InStr(1, Dato_Letto, ":") + 2
Cells(I_App, 6) = Mid(Dato_Letto, Appoggio1)
End If
End Sub
Sub Elabora_ValueDescr()
If InStr(1, Dato_Letto, "!GLE ValueDescription") > 0 Then
Dato_Letto = Replace(Replace(Dato_Letto, Chr(34), "", 1), ";", "", 1)
Appoggio0 = InStr(1, Dato_Letto, ":") + 2
Appoggio1 = InStr(1, Dato_Letto, "|") + 1
I_App = I
Do While InStr(Appoggio1, Dato_Letto, "|-|") > 0
Appoggio2 = InStr(Appoggio1, Dato_Letto, "|-|") - 1
If Appoggio2 < Appoggio1 Then
Exit Do
End If
Cells(I, 3) = Mid(Dato_Letto, Appoggio0, Appoggio2 - Appoggio0 + 1)
If Left(Cells(I, 3), 1) = "|" Then
Appoggio1 = InStr(1, Cells(I, 3), "|")
If Appoggio1 > 0 Then
Cells(I, 3) = Mid(Cells(I, 3), Appoggio1 + 1)
End If
End If
Appoggio0 = Appoggio2 + 3
Appoggio1 = Appoggio0
I = I + 1
Loop
End If
End Sub
Torna a Applicazioni Office Windows
Excel: formula automatica per evidenziare prodotto scaduto Autore: gamma_ray |
Forum: Applicazioni Office Windows Risposte: 3 |
Salvare file excel in formato html escludendo le immagini Autore: systemcrack |
Forum: Applicazioni Office Windows Risposte: 5 |
Modifica visualizzazione file di una cartella Autore: mastino46 |
Forum: Sistemi Operativi Windows Risposte: 2 |
Problema con macro copia e rinomina file Autore: systemcrack |
Forum: Applicazioni Office Windows Risposte: 2 |
formula excel non visualizza risultato Autore: tommasog |
Forum: Applicazioni Office Windows Risposte: 6 |
Visitano il forum: Nessuno e 52 ospiti