Thema Datum  Von Nutzer Rating
Antwort
28.05.2021 17:38:34 Andreas
NotSolved
28.05.2021 18:11:36 Gast3180
*****
NotSolved
29.05.2021 21:02:10 Andreas
NotSolved
Blau Textdatei über VBA einlesen und Werte vergleichen
30.05.2021 03:34:00 Gast58663
*****
NotSolved
30.05.2021 12:38:47 Gast47805
NotSolved
30.05.2021 14:40:32 Gast89593
NotSolved
30.05.2021 15:15:09 Andreas
NotSolved
30.05.2021 15:24:40 Gast38157
NotSolved
30.05.2021 17:24:20 Gast37156
NotSolved
30.05.2021 17:43:50 Gast41263
NotSolved
30.05.2021 19:30:09 Andreas
NotSolved
30.05.2021 19:52:58 Andreas
NotSolved
31.05.2021 20:53:26 Gast817
NotSolved

Ansicht des Beitrags:
Von:
Gast58663
Datum:
30.05.2021 03:34:00
Views:
625
Rating: Antwort:
  Ja
Thema:
Textdatei über VBA einlesen und Werte vergleichen

probier mal:

Option Explicit

Private Type MinMax
  Min As Single
  Max As Single
End Type

Public Sub Test()
  
  Dim vntFilename As Variant
  
  vntFilename = Application.GetOpenFilename("Textdatei (*.txt),*.txt", Title:="Messdatei auswerten")
  If VarType(vntFilename) = vbBoolean Then Exit Sub
  
  Call Workbooks.OpenText( _
          Filename:=vntFilename, _
          ConsecutiveDelimiter:=True, _
          Semicolon:=True)
  
  Dim rngData   As Excel.Range
  Dim rngMass   As Excel.Range
  Dim rngSpeed  As Excel.Range
  Dim udtMass   As MinMax
  Dim udtSpeed  As MinMax
  Dim nOK       As Long
  Dim i         As Long
  
  With ActiveWorkbook.Worksheets(1)
    
    udtMass.Min = .Range("B3").Value + .Range("B4").Value 'value ist neg.
    udtMass.Max = .Range("B3").Value + .Range("B5").Value
    
    udtSpeed.Min = .Range("B7").Value + .Range("B8").Value 'value ist neg.
    udtSpeed.Max = .Range("B7").Value + .Range("B9").Value
    
    'Datenbereich
    'in 1. Spalte steht das Gewicht
    'in 2. Spalte steht die Geschwindigkeit
    Set rngData = .Range("A14", .Cells.SpecialCells(XlCellType.xlCellTypeLastCell))
    
  End With
  
  For i = 1 To rngData.Rows.Count
    
    Set rngMass = rngData.Cells(i, 1)
    Set rngSpeed = rngData.Cells(i, 2)
    
    If (udtMass.Min <= rngMass.Value And rngMass.Value <= udtMass.Max Or rngMass.Value = "") _
    And (udtSpeed.Min <= rngSpeed.Value And rngSpeed.Value <= udtSpeed.Max Or rngSpeed.Value = "") _
    Then
      nOK = nOK + 1
    End If
    
  Next
  
  Dim strMessage As String
  
  strMessage = "Anzahl Messungen: " & rngData.Rows.Count & vbNewLine _
               & "OK: " & nOK & vbNewLine _
               & "Nicht ok: " & rngData.Rows.Count - nOK
  
  Call MsgBox(strMessage, vbInformation)
  
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
28.05.2021 17:38:34 Andreas
NotSolved
28.05.2021 18:11:36 Gast3180
*****
NotSolved
29.05.2021 21:02:10 Andreas
NotSolved
Blau Textdatei über VBA einlesen und Werte vergleichen
30.05.2021 03:34:00 Gast58663
*****
NotSolved
30.05.2021 12:38:47 Gast47805
NotSolved
30.05.2021 14:40:32 Gast89593
NotSolved
30.05.2021 15:15:09 Andreas
NotSolved
30.05.2021 15:24:40 Gast38157
NotSolved
30.05.2021 17:24:20 Gast37156
NotSolved
30.05.2021 17:43:50 Gast41263
NotSolved
30.05.2021 19:30:09 Andreas
NotSolved
30.05.2021 19:52:58 Andreas
NotSolved
31.05.2021 20:53:26 Gast817
NotSolved