Thema Datum  Von Nutzer Rating
Antwort
20.10.2016 09:06:09 Soeren
Solved
20.10.2016 09:52:51 Gast21762
Solved
20.10.2016 10:05:42 Gast11739
NotSolved
20.10.2016 12:24:30 Soeren
NotSolved
20.10.2016 12:41:09 Gast17228
NotSolved
20.10.2016 12:53:57 Soeren
NotSolved
21.10.2016 20:09:12 Soeren
NotSolved
21.10.2016 21:06:22 Gast12128
NotSolved
21.10.2016 21:28:39 Soeren
NotSolved
21.10.2016 21:31:46 Gast34914
NotSolved
21.10.2016 21:41:28 Soeren
NotSolved
21.10.2016 21:43:54 Gast46205
NotSolved
21.10.2016 21:55:32 Soeren
NotSolved
21.10.2016 21:56:11 Gast88705
NotSolved
21.10.2016 22:14:34 Gast54181
NotSolved
21.10.2016 22:24:10 Gast87829
NotSolved
21.10.2016 23:02:13 Gast3420
NotSolved
21.10.2016 23:02:14 Gast13888
NotSolved
21.10.2016 23:32:51 Soeren
NotSolved
21.10.2016 22:45:57 Soeren
NotSolved
21.10.2016 22:24:55 Gast7307
NotSolved
21.10.2016 22:39:56 Soeren
NotSolved
21.10.2016 22:42:13 Soeren
NotSolved
21.10.2016 23:01:44 Soeren
NotSolved
22.10.2016 10:43:01 Gast52308
NotSolved
23.10.2016 11:02:53 Soeren
NotSolved
Rot CSV ab zweiter Zeile nach Excel importieren
23.10.2016 12:15:25 Gast20296
NotSolved
23.10.2016 16:49:48 Soeren
NotSolved
23.10.2016 18:57:13 Gast67743
NotSolved
23.10.2016 19:22:01 Soeren
NotSolved
23.10.2016 19:29:16 Soeren
NotSolved
23.10.2016 19:30:40 Soeren
NotSolved
23.10.2016 19:42:28 Soeren
NotSolved
23.10.2016 19:49:10 Soeren
NotSolved
23.10.2016 20:09:18 Gast41213
NotSolved
23.10.2016 20:16:08 Soeren
NotSolved
23.10.2016 20:17:13 Soeren
NotSolved
23.10.2016 20:18:08 Soeren
NotSolved
23.10.2016 20:39:02 Gast78227
NotSolved
23.10.2016 21:04:41 Soeren
NotSolved
23.10.2016 21:21:25 Soeren
NotSolved
23.10.2016 22:49:15 Gast40653
NotSolved
23.10.2016 23:01:19 Soeren
NotSolved
24.10.2016 09:42:45 Gast18846
NotSolved
24.10.2016 10:54:39 Soeren
NotSolved
24.10.2016 12:28:23 Soeren
NotSolved
24.10.2016 14:18:15 Soeren
NotSolved
24.10.2016 21:49:01 Gast82902
NotSolved
24.10.2016 22:04:59 Gast58318
NotSolved
24.10.2016 22:41:58 Soeren
NotSolved
24.10.2016 22:44:25 Soeren
NotSolved
24.10.2016 22:58:20 Soeren
Solved

Ansicht des Beitrags:
Von:
Gast20296
Datum:
23.10.2016 12:15:25
Views:
798
Rating: Antwort:
  Ja
Thema:
CSV ab zweiter Zeile nach Excel importieren

Moin! Also dein Code steigt nicht aus, wenn Zeile 1 leer ist sondern , wenn es nur  1 Zeile gibt. Habe den Zeilenumbruch beim splitten  geändert, da ich nicht weiß, wie dein Porgramm den erstellt. An Stelle von vbcrlf steht nur chr(10).

Dein Code trägt aber nur dann was ein, wenn mindestens 62 mal ein ; in der Zeile vorkommt. Falls das nicht der Fall ist, wird nix eingetragen (läuft ja sonst auf einen Fehler hinaus).  Das mal prüfen. Laut deinem Code brauchst du nur 42 ;. Dein größter Zugriff ist ja myArr(42).

Habe es auch getestet. Bei mirkommt er bis zur zweiten Zeile. Die wird nun auch ausgegeben. Zudem wird die csv wieder geschlossen (aber nicht gelöscht)

VG

 

 

Sub ReadfromCSVSimple(fname As Variant, Optional fs As String = ";")
   
        Dim hfile     As Integer   ' Filehandle bzw. Dateinummer
        Dim lAnzahl   As Long      ' Zähler über alle Zeilen
        Dim OneLine   As String    ' eine Zeile als String
        Dim myArr     As Variant   ' eine Zeile in Felder getrennt
        Dim myArrRows As Variant  ' Array zum Trennen des csv in mehrere Zeilen
        Dim lnglast   As Long
        Dim zeichen   As Variant
        Dim iCnt      As Integer  'Schleifenzaehler fuer Array. Bei vielen Daten Long nehmen
        Dim inhalt
  
        ThisWorkbook.Worksheets("Projektübersicht").Select
             
        lnglast = Cells(Rows.Count, 1).End(xlUp).Row
             
        If IsEmpty(Cells(lnglast, 1)) Then lnglast = Cells(lnglast, 1).End(xlUp).Row
             
        lnglast = lnglast + 1 ' ermittelt die erste freie Zeile
             
        hfile = FreeFile
     
        Open fname For Input As #hfile
    
        inhalt = Input(LOF(hfile), hfile)        ' liest alles ein
   
        Close #hfile
        
        If UBound(Split(inhalt, Chr(10))) > 0 Then MsgBox inhalt Else Exit Sub
                                                
        
        OneLine = Split(inhalt, Chr(10))(1) 'die zweite zeile
     
 
        If OneLine <> "" Then MsgBox OneLine Else MsgBox "die zweite Zeile ist leer"            ' ist die Zeile NICHT leer, dann zeige den Inhalt, sonst sag das sie leer ist
             
        myArr = Split(OneLine, ";")
                                                      
        If UBound(myArr) > 61 Then 'es gibt also 44 Einträge geben , 0 und dan bis 43 = 44, Minimum sind 43
              
            With Worksheets("Projektübersicht")
        .Cells(lnglast, 33) = Replace(myArr(15), Chr$(34), vbNullString) 'Firma/ Name
        .Cells(lnglast, 37) = Replace(myArr(17), Chr$(34), vbNullString) ' Straße
        .Cells(lnglast, 35) = Replace(myArr(18), Chr$(34), vbNullString) ' PLZ
        .Cells(lnglast, 36) = Replace(myArr(19), Chr$(34), vbNullString) 'Ort
        .Cells(lnglast, 38) = Replace(myArr(16), Chr$(34), vbNullString) ' Ansprechpartner
        .Cells(lnglast, 39) = Replace(myArr(20), Chr$(34), vbNullString) ' Telefon
        .Cells(lnglast, 40) = Replace(myArr(22), Chr$(34), vbNullString) ' Mail
        '.Cells(lnglast, 9) = Replace(myArr(64 - 54), Chr$(34), vbNullString)  ' Abwicklung über: Firma/ Name
        '.Cells(lnglast, 13) = Replace(myArr(74 - 54), Chr$(34), vbNullString) ' Straße
        '.Cells(lnglast, 11) = Replace(myArr(2), Chr$(34), vbNullString) ' PLZ:
        '.Cells(lnglast, 12) = Replace(myArr(76 - 54), Chr$(34), vbNullString) ' Ort
        '.Cells(lnglast, 8) = Replace(myArr(77 - 54), Chr$(34), vbNullString) ' Ansprechpartner
        '.Cells(lnglast, 14) = Replace(myArr(78 - 54), Chr$(34), vbNullString) ' Telefon:
        '.Cells(lnglast, 15) = Replace(myArr(79 - 54), Chr$(34), vbNullString) ' Mail
        .Cells(lnglast, 3) = Replace(myArr(23), Chr$(34), vbNullString)  ' BV
        .Cells(lnglast, 7) = Replace(myArr(27), Chr$(34), vbNullString)  ' Straße
        .Cells(lnglast, 5) = Replace(myArr(28), Chr$(34), vbNullString)  ' PLZ
        .Cells(lnglast, 6) = Replace(myArr(29), Chr$(34), vbNullString)   'Ort
        .Cells(lnglast, 16) = Replace(myArr(30), Chr$(34), vbNullString)   'Ansprechpartner
        .Cells(lnglast, 22) = Replace(myArr(31), Chr$(34), vbNullString)   'Telefon
        .Cells(lnglast, 23) = Replace(myArr(33), Chr$(34), vbNullString)   'Mail
              
        '.Cells(lnglast, 42) = Replace(myArr(67 - 54), Chr$(34), vbNullString)    'Wunschtermin
        '.Cells(lnglast, 43) = Replace(myArr(95 - 54), Chr$(34), vbNullString)   'Freitext
        .Cells(lnglast, 31) = "Objekt:" & " " & Replace(myArr(34), Chr$(34), vbNullString) _
           & vbCrLf & "Objekthersteller:" & " " & Replace(myArr(35), Chr$(34), vbNullString) _
           & vbCrLf & "Objektalter:" & " " & Replace(myArr(36), Chr$(34), vbNullString) _
           & vbCrLf & "Trägermaterial:" & " " & Replace(myArr(37), Chr$(34), vbNullString) _
           & vbCrLf & "Oberfläche:" & " " & Replace(myArr(38), Chr$(34), vbNullString) _
           & vbCrLf & "Farbsystem-Nr.:" & " " & Replace(myArr(39), Chr$(34), vbNullString) _
           & vbCrLf & "Glanzgrad:" & " " & Replace(myArr(40), Chr$(34), vbNullString) _
           & vbCrLf & "Schadensumfang:" & " " & Replace(myArr(40), Chr$(34), vbNullString) _
           & vbCrLf & "Schadensort:" & " " & Replace(myArr(41), Chr$(34), vbNullString) _
           & vbCrLf & "Schadensursache:" & " " & Replace(myArr(42), Chr$(34), vbNullString) & vbCrLf & "Schadensbeschreibung:" & " " & Replace(myArr(43), Chr$(34), vbNullString)
              
          
         End With
            
         lnglast = lnglast + 1
            
         End If
         
        MsgBox "erfolgreich eingetragen"
     
      
     
     
       
   
    End Sub
   
   
   
   
   
    Private Sub CommandButton1_Click()
    Dim Dateiname  As Variant
   
   
    Dateiname = Application.GetOpenFilename(filefilter:="Textdateien (*.csv), *.csv")
      
      
    If Dateiname <> "Falsch" Or Dateiname <> False Then
       
    Else
       
    Exit Sub
       
    End If
       
       
    Call ReadfromCSVSimple(Dateiname, ";")
      
    Unload UserForm3
    End Sub
   
   
Private Sub CommandButton2_Click()
Unload Me
UserForm4.Show
End Sub
   
Private Sub CommandButton3_Click()
Unload Me
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
20.10.2016 09:06:09 Soeren
Solved
20.10.2016 09:52:51 Gast21762
Solved
20.10.2016 10:05:42 Gast11739
NotSolved
20.10.2016 12:24:30 Soeren
NotSolved
20.10.2016 12:41:09 Gast17228
NotSolved
20.10.2016 12:53:57 Soeren
NotSolved
21.10.2016 20:09:12 Soeren
NotSolved
21.10.2016 21:06:22 Gast12128
NotSolved
21.10.2016 21:28:39 Soeren
NotSolved
21.10.2016 21:31:46 Gast34914
NotSolved
21.10.2016 21:41:28 Soeren
NotSolved
21.10.2016 21:43:54 Gast46205
NotSolved
21.10.2016 21:55:32 Soeren
NotSolved
21.10.2016 21:56:11 Gast88705
NotSolved
21.10.2016 22:14:34 Gast54181
NotSolved
21.10.2016 22:24:10 Gast87829
NotSolved
21.10.2016 23:02:13 Gast3420
NotSolved
21.10.2016 23:02:14 Gast13888
NotSolved
21.10.2016 23:32:51 Soeren
NotSolved
21.10.2016 22:45:57 Soeren
NotSolved
21.10.2016 22:24:55 Gast7307
NotSolved
21.10.2016 22:39:56 Soeren
NotSolved
21.10.2016 22:42:13 Soeren
NotSolved
21.10.2016 23:01:44 Soeren
NotSolved
22.10.2016 10:43:01 Gast52308
NotSolved
23.10.2016 11:02:53 Soeren
NotSolved
Rot CSV ab zweiter Zeile nach Excel importieren
23.10.2016 12:15:25 Gast20296
NotSolved
23.10.2016 16:49:48 Soeren
NotSolved
23.10.2016 18:57:13 Gast67743
NotSolved
23.10.2016 19:22:01 Soeren
NotSolved
23.10.2016 19:29:16 Soeren
NotSolved
23.10.2016 19:30:40 Soeren
NotSolved
23.10.2016 19:42:28 Soeren
NotSolved
23.10.2016 19:49:10 Soeren
NotSolved
23.10.2016 20:09:18 Gast41213
NotSolved
23.10.2016 20:16:08 Soeren
NotSolved
23.10.2016 20:17:13 Soeren
NotSolved
23.10.2016 20:18:08 Soeren
NotSolved
23.10.2016 20:39:02 Gast78227
NotSolved
23.10.2016 21:04:41 Soeren
NotSolved
23.10.2016 21:21:25 Soeren
NotSolved
23.10.2016 22:49:15 Gast40653
NotSolved
23.10.2016 23:01:19 Soeren
NotSolved
24.10.2016 09:42:45 Gast18846
NotSolved
24.10.2016 10:54:39 Soeren
NotSolved
24.10.2016 12:28:23 Soeren
NotSolved
24.10.2016 14:18:15 Soeren
NotSolved
24.10.2016 21:49:01 Gast82902
NotSolved
24.10.2016 22:04:59 Gast58318
NotSolved
24.10.2016 22:41:58 Soeren
NotSolved
24.10.2016 22:44:25 Soeren
NotSolved
24.10.2016 22:58:20 Soeren
Solved