J'utilise la fonction _StringToArray2D() dans une boucle pour lire des fichiers. Cependant, la fonction ne met pas en forme un fichier alors que si je lis le fichier tout seul, la fonction le met bien en forme...
Si quelqu'un a une idée... Merci par avance.
► Afficher le texte
Code : Tout sélectionner
Func _CaulkingHistory()
$ExcelRowStart = 3
Redim $TableauSortie[Ubound($aDummyListView1, 1)][60]
For $i = 0 To UBound($aDummyListView1) - 1
Global $DummyFile = $aDummyListView1[$i][3]
_ReadFile($DummyFile, $i)
_GUICtrlStatusBar_SetText($hStatus, "Lecture du fichier " & $aDummyListView1[$i][3] & " - fichier #" & $i & "/" & UBound($aDummyListView1), 2)
Next
_GUICtrlStatusBar_SetText($hStatus, "Données importées.", 2)
_ArrayDisplay($TableauSortie)
;_WriteIntoExcel()
EndFunc
Func _ReadFile($DummyFile, $i)
Local $hFileToRead2 = FileRead($DummyFile)
$aReturns2 = _StringToArray2D($hFileToRead2, @CRLF, ";", 1)
Local $iIndexaReturns2 = _ArraySearch($aReturns2, "")
$iIndexaReturns2 = Int($iIndexaReturns2)
Local $sRange2 = $iIndexaReturns2 & "-" & UBound($aReturns2) - 1
_ArrayDelete($aReturns2, $sRange2)
;_ArrayDisplay($aReturns2)
If StringInStr($aReturns2[0][0], "FILE") Then
$aReturns2[0][0] = StringReplace($aReturns2[1][0], " ", "")
If @error Then MsgBox(16, "XPress-CurveViewer", "Pas de données pour tracer une courbe.", -1, $MainGUI)
$aSplit = StringSplit($aReturns2[0][0], "'")
$aSplitDateTime = StringSplit($aReturns2[2][0], " ")
$aBis = 10
Else
$aReturns2[0][0] = StringReplace($aReturns2[0][0], " ", "")
If @error Then MsgBox(16, "XPress-CurveViewer", "Pas de données pour tracer une courbe.", -1, $MainGUI)
$aSplit = StringSplit($aReturns2[0][0], "'")
$aSplitDateTime = StringSplit($aReturns2[1][0], " ")
$aBis = 5
EndIf
$TableauSortie[$i][1] = UBound($aReturns2)
$TableauSortie[$i][2] = StringReplace($aDummyListView1[$i][0], "'", "")
$TableauSortie[$i][3] = $aSplit[1]
$TableauSortie[$i][4] = $aSplit[2]
$TableauSortie[$i][5] = StringReplace($aSplitDateTime[1], "'", "")
$TableauSortie[$i][6] = StringReplace($aSplitDateTime[2], "'", "")
For $a = $aBis To UBound($aReturns2) - 1
$TableauSortie[$i][$a + 2] = StringReplace(StringReplace(StringReplace(StringReplace($aReturns2[$a][0], "'", ""), "=", ""), "nicht auswertbar", ""), " ", "")
$TableauSortie[$i][0] &= StringReplace(StringReplace(StringReplace(StringReplace($aReturns2[$a][0], "'", ""), "=", ""), "nicht auswertbar", ""), " ", "")
If StringInStr($aReturns2[$a][0], "nicht") Then
$TableauSortie[$i][$a + (UBound($aReturns2) - 3)] = "n.a"
Else
$TableauSortie[$i][$a + (UBound($aReturns2) - 3)] = $aReturns2[$a][1]
EndIf
Next
FileClose($hFileToRead2)
$hFileToRead2 = ""
EndFunc



