Lecture fichier texte Delphi

  • Initiateur de la discussion Initiateur de la discussion Loïg
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Loïg

XLDnaute Nouveau
Bonsoir,
J’ai une application en Delphi qui utilise un fichier texte, celle-ci fait un petit calcul de degrés heure. Je voudrais transposer ce calcul en VBA, malheureusement je ne comprends pas le format du fichier texte. Quelqu’un saurait il lire ce fichier dans Excel ?
Par avance merci.
Je vous joins le fichier texte, que le code fonctionnant en Delphi.

Code:
Type
    TTemp = array[1..8760] of SmallInt;
Var
   Temp : TTemp;
   Fich : File of TTemp;
   i,total, base,DegresHeures : Integer;

begin
   if FileExists('C:\...\Text.txt') then
   Begin
     Base := 19*10;
     Total := 0;
     AssignFile(Fich,'C:\...\Text.txt');
     Reset(Fich);
     Read(Fich,Temp);
     CloseFile(Fich);
     For i := 1 to 8760 do
     Begin
          if Temp[i] < Base then
             Total := Total + (Base-Temp[i]);
     end;
     DegresHeures := Round(Total div 10);
     Edit1.Text := inttostr(DegresHeures);
     edit2.Text := inttostr(Temp[12]);
     edit3.Text := inttostr(Temp[1222]) ;
    End;

end;
 

Pièces jointes

Re : Lecture fichier texte Delphi

Voici, le code répondant à mon problème :
Code:
Sub Test()
    Dim i As Long, total As Long, base As Long
    Dim iFile As Integer
    Dim Temp()
    base = 19 * 10
    iFile = FreeFile()
    Open "C:\test.txt" For Binary As iFile
    ReDim Temp(1 To 8760)
    
    For i = 1 To 8760
        Temp(i) = Asc(StrConv(InputB(2, #iFile), vbUnicode))
        If IsNumeric(Temp(i)) Then
            If Temp(i) < base Then
                total = total + Temp(i)
            End If
        End If
    Next i
    Close #iFile
    MsgBox total
End Sub
Merci à tous pour votre aide.
Bonne continuation.
 
Re : Lecture fichier texte Delphi

Bonjour tout le monde,
Après plus de vérification, ce code fonctionne très bien pour des valeurs comprises entre 0 et 255, par contre pour les valeurs négatives et les valeurs supérieures à 255 je n’obtiens pas de bons résultats.
Quelqu’un aurai une solution ?
A+
Loïg
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

C
Réponses
3
Affichages
1 K
creal69360
C
J
Réponses
1
Affichages
1 K
J
Réponses
0
Affichages
1 K
Jojolapin
J
M
Réponses
4
Affichages
2 K
M
M
Réponses
3
Affichages
4 K
_matt_44
M
Retour