Thema Datum  Von Nutzer Rating
Antwort
28.04.2021 10:07:33 Axl
NotSolved
28.04.2021 10:23:06 Mase
****
NotSolved
Rot Split()
28.04.2021 16:10:53 Axl
NotSolved
28.04.2021 16:30:29 Gast93437
NotSolved
28.04.2021 21:52:08 Mase
NotSolved
29.04.2021 10:29:57 Axl
NotSolved
29.04.2021 21:01:23 Gast33120
NotSolved
03.05.2021 10:11:58 Axl
NotSolved
03.05.2021 12:31:02 Gast78453
NotSolved

Ansicht des Beitrags:
Von:
Axl
Datum:
28.04.2021 16:10:53
Views:
172
Rating: Antwort:
  Ja
Thema:
Split()

Hallo Mase,

Danke für die Rückmeldung

Da ich nicht so fit in Excel VBA bin und den Code mir aus Einzelteilen gebastelt habe, stehe ich aufm Schlauch.

Folgend sieht man, dass ich die SplitFunktiom Zeile dazugefügt habe, aber es passiert trotzdem nichts. Es kommt auch keine Fehlermeldung. 

Wenn du drüber schauen könntest und mir den Fehler zeigen, wäre es echt nett, da ich in VBA ein richtiger Anfänger bin.

 

Freundliche Grüße

Axl

 

Der Code:

Option Explicit
Sub Ubertragung()

    'Neues Excel Objekt
    'Dim objExcel As New Excel.Application
    'Sheet Objekt der jeweiligen Exceldatei
    Dim objSheet As Object
    Dim shZ As Worksheet
    'Hilfsvariablen
    Dim iRow As Long, j As Long, I As Long

    Dim strDateipfad As String
    Dim strPfad As String
    Dim strDateiname As String
    Dim Wb As Workbook, WbZ As Workbook
    
Application.ScreenUpdating = False

    Set WbZ = ThisWorkbook
    Set shZ = WbZ.Worksheets(1)  '<=== anpassen !!!! "1" Index 1 ist die erste Arbeitstabelle / erstes Arbeitsblatt

    'Pfad in welchem die Dateien der zu
    'kopierenden Zellen sich befinden auswählen
    strPfad = ThisWorkbook.Path & Application.PathSeparator
    'Schleife welche den Zelleninhalt aller aufgelisteten
    'Dateien in mehrere Zellen des Hauptprogramms schreibt

    For iRow = 4 To Cells(Rows.Count, 4).End(xlUp).Row
        'Überprüfen, ob in Spalte "Dateiname" bzw "PSP-Element" ein solcher eingetragen ist.
        '(der Arbeitsvorgang wird fortgesetzt)
        
        If shZ.Cells(iRow, 2) = "" Then '= "" Then 'Wenn Zelle in Spalte B Leer dann Exit
            Exit Sub
        Else
            strDateiname = Split(shZ.Cells(iRow, 2), "_")(0)       ' <====  Erstes Element auslesen?
            strDateipfad = strPfad & strDateiname & ".xlsm"    '


            'Überprüfen, ob die in der Tabelle angegebene Datei vorhanden ist.
            '(der Arbeitsvorgang wird fortgesetzt)
            If Len(Dir(strDateipfad)) Then
                If isFileOpen(strDateipfad) Then
                shZ.Cells(iRow, 3) = "nicht aktuell"
            Else
            Cells(iRow, 3) = "aktuell"

                Set Wb = Workbooks.Open(strDateipfad, ReadOnly:=True)
                Set objSheet = Wb.Sheets("Schnittstelle")                   '<==== Schnittstelle

                  For I = 1 To Sheets.Count
                  ActiveWorkbook.Worksheets(I).Unprotect Password:="KKI"    'optional Schreibschutz aufheben

                For j = 7 To 27
                   shZ.Cells(iRow, j) = objSheet.Cells(j + 19, 2)
                Next j
                    ActiveWorkbook.Worksheets(I).Protect Password:="KKI"
                Next I

                Wb.Close saveChanges:=False

                Set Wb = Nothing: Set objSheet = Nothing
            End If
          End If
        End If
Nxt_File:
    Next iRow
Set WbZ = Nothing: Set shZ = Nothing

Verknuepfung

Application.ScreenUpdating = True

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.04.2021 10:07:33 Axl
NotSolved
28.04.2021 10:23:06 Mase
****
NotSolved
Rot Split()
28.04.2021 16:10:53 Axl
NotSolved
28.04.2021 16:30:29 Gast93437
NotSolved
28.04.2021 21:52:08 Mase
NotSolved
29.04.2021 10:29:57 Axl
NotSolved
29.04.2021 21:01:23 Gast33120
NotSolved
03.05.2021 10:11:58 Axl
NotSolved
03.05.2021 12:31:02 Gast78453
NotSolved