Excel Makro Hilfe - Makro zum Zusammenfassen von Zeilen mehrerer Dateien
Hallo Liebe Community ;)
Ich bin gerade dabei ein Makro zu schreiben, welches wie folgt funktionieren soll.
Ein angegebenes Verzeichnis, soll nach *.XLS Dateien durchsucht werden. Anschließend sollen alle gefundenen Excel Dateien ausgelesen werden. Hier soll immer das gleiche Tabellenblatt und die gleiche Zeile ausgelesen werden und in eine "GesamtDatei" untereinander geschrieben werden.
Folgendes Makro habe ich bereits gefunden, welches auch soweit ganz gut funktioniert, jedoch habe ich ein Problem es auf das Bestimmte Tabellenblatt und die bestimmte Zeile anzupassen anzupassen.
Die auszuelsene Zeile wäre 2:2
Der Name des Tabellenblattes ist "Werte"
Das Ganze soll immer in das Tabelleblatt "Data" der Gesamtdatei ausgelesen werden.
Da ich das Makro von einem vorhandenen Makro umgeschrieben habe (und dies höchstwahrscheinlich falsch getan habe), erhalte ich aktuell einen "Laufzeitfehler 1004". Die Bemerkungen sind noch aus dem alten Makro welches ich hier im Forum gefunden habe (Excel Dateien durchsuchen und Werte in neue Excel Datei auslesen)
Dies war das Ausgangs Makro:
Ich denke das ich einfach zu blöd bin und die Lösung ziemlich einfach ist :P
Kann mir jemand Helfen? Vielen Dank im voraus!
M.f.G.
Ich bin gerade dabei ein Makro zu schreiben, welches wie folgt funktionieren soll.
Ein angegebenes Verzeichnis, soll nach *.XLS Dateien durchsucht werden. Anschließend sollen alle gefundenen Excel Dateien ausgelesen werden. Hier soll immer das gleiche Tabellenblatt und die gleiche Zeile ausgelesen werden und in eine "GesamtDatei" untereinander geschrieben werden.
Folgendes Makro habe ich bereits gefunden, welches auch soweit ganz gut funktioniert, jedoch habe ich ein Problem es auf das Bestimmte Tabellenblatt und die bestimmte Zeile anzupassen anzupassen.
Die auszuelsene Zeile wäre 2:2
Der Name des Tabellenblattes ist "Werte"
Das Ganze soll immer in das Tabelleblatt "Data" der Gesamtdatei ausgelesen werden.
Sub GetData()
Sheets("Data").Select
Set oMe = ThisWorkbook.ActiveSheet 'Data (= die aktuelle Tabelle der aktuellen Datei)
Const sDateiPfad As String = "C:\test\" 'Pfad für zu durchsuchende Excel-Dateien; mit Backslash am Ende
sZeile = "2:2" 'auszulesende Zeile
iZeile = 2 'ab Zeile 2 in Zieltabelle eintragen
iSpalte = 2 'ab Spalte A in Zieltabelle eintragen
Set oFS = CreateObject("Scripting.FileSystemObject")
For Each oDatei In oFS.GetFolder(sDateiPfad).Files
sWbName = oDatei.Name
If Left(LCase(oFS.GetExtensionName(sWbName)), 3) = "xls" Then
Workbooks.Open (sDateiPfad & sWbName)
Sheets("Werte").Select
oMe.Cells(iZeile, iSpalte).Value = Workbooks(sWbName).ActiveSheet.Range(sZeile).Value
oMe.Hyperlinks.Add Anchor:=oMe.Cells(iZeile, iSpalte - 1), Address:=sDateiPfad & sWbName, TextToDisplay:=sDateiPfad & sWbName
Workbooks(sWbName).Saved = True
Workbooks(sWbName).Close
iZeile = iZeile + 1
End If
Next
End Sub
Da ich das Makro von einem vorhandenen Makro umgeschrieben habe (und dies höchstwahrscheinlich falsch getan habe), erhalte ich aktuell einen "Laufzeitfehler 1004". Die Bemerkungen sind noch aus dem alten Makro welches ich hier im Forum gefunden habe (Excel Dateien durchsuchen und Werte in neue Excel Datei auslesen)
Dies war das Ausgangs Makro:
Sub GetData()
Set oMe = ThisWorkbook.ActiveSheet 'ZielDatei/-Tabelle (= die aktuelle Tabelle der aktuellen Datei)
Const sDateiPfad As String = "D:\Test\" 'Pfad für zu durchsuchende Excel-Dateien; mit Backslash am Ende
sZelle1 = "H5" 'auszulesende Zelle
sZelle2 = "D5" 'weitere auszulesende Zelle
iZeile = 2 'ab Zeile 2 in Zieltabelle eintragen
iSpalte = 1 'ab Spalte A in Zieltabelle eintragen
Set oFS = CreateObject("Scripting.FileSystemObject")
For Each oDatei In oFS.GetFolder(sDateiPfad).Files
sWbName = oDatei.Name
If Left(LCase(oFS.GetExtensionName(sWbName)), 3) = "xls" Then
Workbooks.Open (sDateiPfad & sWbName)
oMe.Cells(iZeile, iSpalte).Value = Workbooks(sWbName).ActiveSheet.Range(sZelle1).Value
oMe.Cells(iZeile, iSpalte + 1).Value = Workbooks(sWbName).ActiveSheet.Range(sZelle2).Value
oMe.Hyperlinks.Add Anchor:=oMe.Cells(iZeile, iSpalte + 2), Address:=sDateiPfad & sWbName, TextToDisplay:=sWbName
Workbooks(sWbName).Saved = True
Workbooks(sWbName).Close
iZeile = iZeile + 1
End If
Next
End Sub
Ich denke das ich einfach zu blöd bin und die Lösung ziemlich einfach ist :P
Kann mir jemand Helfen? Vielen Dank im voraus!
M.f.G.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 197189
Url: https://administrator.de/forum/excel-makro-hilfe-makro-zum-zusammenfassen-von-zeilen-mehrerer-dateien-197189.html
Ausgedruckt am: 16.05.2025 um 08:05 Uhr
12 Kommentare
Neuester Kommentar
Hallo trdshimo und willkommen im Forum!
Da Du nicht genau angibst, ob in den Quelltabellen jeweils nur Werte oder doch auch Formeln stehen, werden im folgenden Ansatz auf jeden Fall Werte übertragen (und ggf Formeln durch ihr Ergebnis ersetzt):
Grüße
bastla
Da Du nicht genau angibst, ob in den Quelltabellen jeweils nur Werte oder doch auch Formeln stehen, werden im folgenden Ansatz auf jeden Fall Werte übertragen (und ggf Formeln durch ihr Ergebnis ersetzt):
Sub GetData()
Const sDateiPfad As String = "C:\test\" 'Pfad für zu durchsuchende Excel-Dateien; mit Backslash am Ende
Const sTabQuelle As String = "Werte" 'Tabellenname in den Quelldateien
Const sTabZiel As String = "Data" 'Tabellenname in der Zieldatei
sZeile = "2:2" 'auszulesender Bereich (ganze Zeile 2)
iZeile = 2 'ab Zeile 2 in Zieltabelle eintragen
Set oMe = ThisWorkbook.Sheets(sTabZiel)
Set oFS = CreateObject("Scripting.FileSystemObject")
For Each oDatei In oFS.GetFolder(sDateiPfad).Files
sWbName = oDatei.Name
If Left(LCase(oFS.GetExtensionName(sWbName)), 3) = "xls" Then
Workbooks.Open (sDateiPfad & sWbName) 'Quelldatei öffnen
Sheets(sTabQuelle).Range(sZeile).Copy 'Quellbereich (Zeile 2) kopieren und ...
oMe.Rows(iZeile).PasteSpecial xlPasteValues '... in Zieldatei nur Werte einfügen
oMe.Cells(iZeile, 1).Copy 'Dummy, um Frage nach "großer Menge von Informationen in der Zwischenablage" zu vermeiden
Workbooks(sWbName).Saved = True
Workbooks(sWbName).Close
iZeile = iZeile + 1 'Zeilennummer füür Zieldatei erhöhen
End If
Next
End Sub
bastla
Hallo trdshimo!
Aufgrund der Fehlermeldung würde ich vermuten, dass es keine Tabelle mit dem Namen "Tabelle3" gibt ...
Hinsichtlich des Hyperlinks noch eine Anmerkung: Da es keine Variable "iSpalte" mehr gibt (hatte ich als unnötig gesehen, da ja eine ganze Zeile eingefügt wird) kann die Zeile 18 so ohnehin nicht funktionieren, und das "- 1" wäre vermutlich auch zu überdenken - daher besser gleich die Spalte für den Hyperlink unmittelbar (ohne Berechnung) angeben (entweder mittels einer Konstanten / Variablen, die Du am Anfang des Makros einfügst oder zur Not auch einfach durch Eintrag der Spalte in die Zeile 18).
Grüße
bastla
P.S.: Spannend finde ich, wie sich in kurzer Zeit Tabellennamen (ehemals "Werte") und Zeilennummern (gestern noch 2) ändern können ...
Aufgrund der Fehlermeldung würde ich vermuten, dass es keine Tabelle mit dem Namen "Tabelle3" gibt ...
Hinsichtlich des Hyperlinks noch eine Anmerkung: Da es keine Variable "iSpalte" mehr gibt (hatte ich als unnötig gesehen, da ja eine ganze Zeile eingefügt wird) kann die Zeile 18 so ohnehin nicht funktionieren, und das "- 1" wäre vermutlich auch zu überdenken - daher besser gleich die Spalte für den Hyperlink unmittelbar (ohne Berechnung) angeben (entweder mittels einer Konstanten / Variablen, die Du am Anfang des Makros einfügst oder zur Not auch einfach durch Eintrag der Spalte in die Zeile 18).
Grüße
bastla
P.S.: Spannend finde ich, wie sich in kurzer Zeit Tabellennamen (ehemals "Werte") und Zeilennummern (gestern noch 2) ändern können ...
Hallo trdshimo!
Sorry - das lässt weiterhin keinen anderen Schluss zu, als dass das Blatt nicht gefunden wird - ev ein Leerzeichen vor oder nach dem Namen der Tabelle?
Wenn Du sicher bist (oder auch nur, um den Rest testen zu können
), dass es immer um das 3. Blatt der Mappe geht, könntest Du in Zeile 3 anstelle des Namens "Tabelle3" auch die Zahl 3 verwenden (dann aber natürlich nicht mit "
In Zeile 2 fehlt übrigens am Ende des Pfades der Backslash.
Eine sinnvolle Ergänzung (wenn auch eher nur für die Optik) wäre noch, unmittelbar vor "
einzufügen.
Grüße
bastla
Sorry - das lässt weiterhin keinen anderen Schluss zu, als dass das Blatt nicht gefunden wird - ev ein Leerzeichen vor oder nach dem Namen der Tabelle?
Wenn Du sicher bist (oder auch nur, um den Rest testen zu können
As String
" - den Typ kannst Du auch weglassen) ...In Zeile 2 fehlt übrigens am Ende des Pfades der Backslash.
Eine sinnvolle Ergänzung (wenn auch eher nur für die Optik) wäre noch, unmittelbar vor "
End Sub
" eine ZeileApplication.CutCopyMode = False
Grüße
bastla
Hallo trdshimo!
Dann etwa so:
Es ist bei der Angabe der Pfade nicht mehr nötig, am Ende einen Backslash zu setzen.
Grüße
bastla
Dann etwa so:
Sub GetData()
aPfade = Array("C:\Test", "D:\Versuch", "E:\Probe") 'Pfade für zu durchsuchende Excel-Dateien; ohne Backslash am Ende
Const sTabQuelle As String = "Tabelle3" 'Tabellenname in den Quelldateien
Const sTabZiel As String = "Data" 'Tabellenname in der Zieldatei
sZeile = "B4:AA4" 'auszulesender Bereich
iZeile = 2 'ab Zeile 2 in Zieltabelle eintragen
iSpalte = 3 'ab dieser Spalte Daten in Zieltabelle einfügen
Set oMe = ThisWorkbook.Sheets(sTabZiel) 'Sammeltabelle als Objekt zwischenspeichern
oMe.Range("2:65536").Clear 'Data Sheet ab Zeile 2 löschen
Set oFS = CreateObject("Scripting.FileSystemObject")
For Each sDateiPfad In aPfade 'alle Pfade durchgehen
For Each oDatei In oFS.GetFolder(sDateiPfad).Files 'alle Dateien des aktuellen Pfads durchgehen
sWbName = oDatei.Name
If Left(LCase(oFS.GetExtensionName(sWbName)), 3) = "xls" Then
Workbooks.Open (oDatei.Path) 'Quelldatei öffnen
On Error Resume Next
Sheets(sTabQuelle).Range(sZeile).Copy 'Quellbereich kopieren und ...
If Err.Number = 0 Then '... falls kein Fehler aufgetreten ist ...
On Error GoTo 0
oMe.Cells(iZeile, iSpalte).PasteSpecial xlPasteValues '... in Zieldatei nur Werte einfügen
oMe.Cells(iZeile, 1).Copy 'Dummy, um Frage nach "großer Menge von Informationen in der Zwischenablage" zu vermeiden
oMe.Hyperlinks.Add Anchor:=oMe.Cells(iZeile, "A"), Address:=oDatei.Path, TextToDisplay:=oDatei.Path 'Hyperlink
iZeile = iZeile + 1 'Zeilennummer für Zieldatei erhöhen
Else 'Bei Fehler:
On Error GoTo 0
sErrors = sErrors & vbNewLine & oDatei.Path 'Dateipfad der Liste hinzufügen
End If
Workbooks(sWbName).Saved = True
Workbooks(sWbName).Close
End If
Next 'oDatei
Next 'sDateiPfad
Application.CutCopyMode = False 'Kopiermodus beenden
If sErrors <> "" Then MsgBox sErrors, vbCritical, "Fehlerhafte Dateien" 'Falls vorhanden, fehlerhafte Dateien anzeigen
End Sub
Grüße
bastla
Hallo bastla,
ich bin recht neue Hier und hoffe sehr auf ihre Unterstützung.
ich bekomme jeden tag eine Datei mit mehrere Excel Tabellen
ich muss aus dem Dateien nur einen bestimmten Datenblatt auswerten.
so sehen sie ungefähr.
Block Weight [kg] X Y Z Material Density
SA2101 334514 1 2 3 A 8000kg/m3
SA2101 044514 1 2 3 A 8000kg/m3
SA3101 334514 1 2 3 A 8000kg/m3
SA3101 334514 1 2 3 A 8000kg/m3
SA2101 334514 1 2 3 A 8000kg/m3
SA5101 334514 1 2 3 A 8000kg/m3
SA5101 334514 1 2 3 A 8000kg/m3
als Beispiel
ich möchte alle typen aussuchen und summieren in gruppen in eine anderen Tabelle
und automisch neue typen erkennen und ausführen.
folgendes habe ich geschrieben aber er speichert die Daten nicht in die neue Tabelle.
Application.ScreenUpdating = False
' turns off screen updating
Application.DisplayStatusBar = True
' makes sure that the statusbar is visible
' Application.Wait Now + TimeValue("00:00:02")
'---------------------------------------------------
'Initialisierung der Variablen
'---------------------------------------------------
Dim oMe As Object, sSuchbegriff()
Dim oFS As Object
Dim oDatei As Object
Dim actRow As Long
Dim actGroup As String
Dim sBereich As String
Dim sKennz As String
Dim sWbName As String
Dim bEintrag As Boolean
Dim wsTabelle As Worksheet
Dim rFound As Range
Dim vWert As Variant
Dim actGroupNumber As Integer 'Zeile, in der die erste Zusammenfassung geschrieben wird
Dim iSbMax As Integer
Dim iLK As Integer
Dim i As Integer
Dim iZeile As Integer
Dim totalWeight As Double 'Totales Gewicht; Summation der einzelnen Posten
Dim totalGroupWeight As Double 'Totales aktuelles Gruppengewicht
Dim totaladdedGroupWeight As Double 'Totales Gewicht, Summation der einzelnen Gruppen
'---------------------------------------------------
'Setzen der Variablen
'---------------------------------------------------
Set oMe = ThisWorkbook.Worksheets("Auswertung") 'Zieltabelle (in der gerade geöffneten Datei)
'iZeile = 2 'ab dieser Zeile Ergebnisse in die Zieltabelle eintragen
actRow = 5 'Zeile, in der die Iteration beginnt
actGroupNumber = 5
totalWeight = 0
totalGroupWeight = 0
totaladdedGroupWeight = 0
Const sDateiPfad As String = "C:\Users\wis-ikk\Desktop\2016_11_04" 'Pfad für zu durchsuchende Excel-Dateien; mit Backslash am Ende
sKennz = "HULL WCOG" 'Nur Tabellen, deren Name mit dem Kennzeichen beginnt, verarbeiten
iLK = Len(sKennz) 'Länge des Tabellennamen-Kennzeichens
Set oFS = CreateObject("Scripting.FileSystemObject")
For Each oDatei In oFS.GetFolder(sDateiPfad).Files
sWbName = oDatei.Name
Workbooks.Open (oDatei.Path)
For Each wsTabelle In Workbooks(sWbName).Worksheets()
If StrComp(Left(wsTabelle.Name, iLK), sKennz, vbTextCompare) = 0 Then
bEintrag = False
For i = 0 To iSbMax
actGroup = Worksheets("HULL WCOG").Cells(actRow, 2)
Do While Not Worksheets("HULL WCOG").Cells(actRow, 1) = ""
Application.StatusBar = "Processing Group " & actGroup & " | Processed Items: " & actRow
If (actGroup <> Worksheets("HULL WCOG").Cells(actRow, 2)) Then
'Group Values speichern
Worksheets("HULL WCOG").Cells(actGroupNumber, 14) = actGroup
Worksheets("HULL WCOG").Cells(actGroupNumber, 15) = totalGroupWeight
'neuen Gruppennamen definieren
actGroup = Worksheets("HULL WCOG").Cells(actRow, 2)
actGroupNumber = actGroupNumber + 1
totaladdedGroupWeight = totaladdedGroupWeight + totalGroupWeight
totalGroupWeight = Worksheets("HULL WCOG").Cells(actRow, 5)
Else
Dim tempGroupfromPartName As String
tempGroupfromPartName = Left(Worksheets("HULL WCOG").Cells(actRow, 3), 6)
If Not (tempGroupfromPartName = actGroup) Then
Dim Mldg, Stil, Titel, Antwort
Mldg = "BLOCK MODULE NAME " & actGroup & " mit PART NAME " & tempGroupfromPartName & " nicht konsistent! Fortfahren?" ' Meldung definieren.
Stil = vbYesNo + vbCritical + vbDefaultButton2 ' Schaltflächen definieren.
Titel = "MsgBox-Demonstration" ' Titel definieren.
Antwort = MsgBox(Mldg, Stil, Titel) ' Meldung anzeigen.
If Antwort = vbYes Then ' Benutzer hat "Ja" gewählt.
Else ' Benutzer hat "Nein" gewählt.
Exit Sub
End If
End If
totalGroupWeight = totalGroupWeight + Worksheets("HULL WCOG").Cells(actRow, 5)
End If
totalWeight = totalWeight + Worksheets("HULL WCOG").Cells(actRow, 5)
actRow = actRow + 1
Loop
totaladdedGroupWeight = totaladdedGroupWeight + totalGroupWeight
Worksheets("HULL WCOG").Cells(actGroupNumber, 14) = actGroup
Worksheets("HULL WCOG").Cells(actGroupNumber, 15) = totalGroupWeight
Worksheets("HULL WCOG").Cells(actGroupNumber + 2, 14) = "Total Weight"
Worksheets("HULL WCOG").Cells(actGroupNumber + 2, 15) = totalWeight
Worksheets("HULL WCOG").Cells(actGroupNumber + 3, 14) = "Total Added Group Weight"
Worksheets("HULL WCOG").Cells(actGroupNumber + 3, 15) = totaladdedGroupWeight
Next
If bEintrag Then iZeile = iZeile + 1 'mindestens ein Eintrag erfolgt, daher neue Zeile
End If
Next
Workbooks(sWbName).Saved = True
Workbooks(sWbName).Close
Next
Application.ScreenUpdating = True
' gives control of the statusbar back to the programme
End Sub
was mache ich den falsch ????
Leute bitte Hiiiilfeeeeeeeee!!!!!!!!!!!!!!!!!!!!!!!!
ich bin recht neue Hier und hoffe sehr auf ihre Unterstützung.
ich bekomme jeden tag eine Datei mit mehrere Excel Tabellen
ich muss aus dem Dateien nur einen bestimmten Datenblatt auswerten.
so sehen sie ungefähr.
Block Weight [kg] X Y Z Material Density
SA2101 334514 1 2 3 A 8000kg/m3
SA2101 044514 1 2 3 A 8000kg/m3
SA3101 334514 1 2 3 A 8000kg/m3
SA3101 334514 1 2 3 A 8000kg/m3
SA2101 334514 1 2 3 A 8000kg/m3
SA5101 334514 1 2 3 A 8000kg/m3
SA5101 334514 1 2 3 A 8000kg/m3
als Beispiel
ich möchte alle typen aussuchen und summieren in gruppen in eine anderen Tabelle
und automisch neue typen erkennen und ausführen.
folgendes habe ich geschrieben aber er speichert die Daten nicht in die neue Tabelle.
Application.ScreenUpdating = False
' turns off screen updating
Application.DisplayStatusBar = True
' makes sure that the statusbar is visible
' Application.Wait Now + TimeValue("00:00:02")
'---------------------------------------------------
'Initialisierung der Variablen
'---------------------------------------------------
Dim oMe As Object, sSuchbegriff()
Dim oFS As Object
Dim oDatei As Object
Dim actRow As Long
Dim actGroup As String
Dim sBereich As String
Dim sKennz As String
Dim sWbName As String
Dim bEintrag As Boolean
Dim wsTabelle As Worksheet
Dim rFound As Range
Dim vWert As Variant
Dim actGroupNumber As Integer 'Zeile, in der die erste Zusammenfassung geschrieben wird
Dim iSbMax As Integer
Dim iLK As Integer
Dim i As Integer
Dim iZeile As Integer
Dim totalWeight As Double 'Totales Gewicht; Summation der einzelnen Posten
Dim totalGroupWeight As Double 'Totales aktuelles Gruppengewicht
Dim totaladdedGroupWeight As Double 'Totales Gewicht, Summation der einzelnen Gruppen
'---------------------------------------------------
'Setzen der Variablen
'---------------------------------------------------
Set oMe = ThisWorkbook.Worksheets("Auswertung") 'Zieltabelle (in der gerade geöffneten Datei)
'iZeile = 2 'ab dieser Zeile Ergebnisse in die Zieltabelle eintragen
actRow = 5 'Zeile, in der die Iteration beginnt
actGroupNumber = 5
totalWeight = 0
totalGroupWeight = 0
totaladdedGroupWeight = 0
Const sDateiPfad As String = "C:\Users\wis-ikk\Desktop\2016_11_04" 'Pfad für zu durchsuchende Excel-Dateien; mit Backslash am Ende
sKennz = "HULL WCOG" 'Nur Tabellen, deren Name mit dem Kennzeichen beginnt, verarbeiten
iLK = Len(sKennz) 'Länge des Tabellennamen-Kennzeichens
Set oFS = CreateObject("Scripting.FileSystemObject")
For Each oDatei In oFS.GetFolder(sDateiPfad).Files
sWbName = oDatei.Name
Workbooks.Open (oDatei.Path)
For Each wsTabelle In Workbooks(sWbName).Worksheets()
If StrComp(Left(wsTabelle.Name, iLK), sKennz, vbTextCompare) = 0 Then
bEintrag = False
For i = 0 To iSbMax
actGroup = Worksheets("HULL WCOG").Cells(actRow, 2)
Do While Not Worksheets("HULL WCOG").Cells(actRow, 1) = ""
Application.StatusBar = "Processing Group " & actGroup & " | Processed Items: " & actRow
If (actGroup <> Worksheets("HULL WCOG").Cells(actRow, 2)) Then
'Group Values speichern
Worksheets("HULL WCOG").Cells(actGroupNumber, 14) = actGroup
Worksheets("HULL WCOG").Cells(actGroupNumber, 15) = totalGroupWeight
'neuen Gruppennamen definieren
actGroup = Worksheets("HULL WCOG").Cells(actRow, 2)
actGroupNumber = actGroupNumber + 1
totaladdedGroupWeight = totaladdedGroupWeight + totalGroupWeight
totalGroupWeight = Worksheets("HULL WCOG").Cells(actRow, 5)
Else
Dim tempGroupfromPartName As String
tempGroupfromPartName = Left(Worksheets("HULL WCOG").Cells(actRow, 3), 6)
If Not (tempGroupfromPartName = actGroup) Then
Dim Mldg, Stil, Titel, Antwort
Mldg = "BLOCK MODULE NAME " & actGroup & " mit PART NAME " & tempGroupfromPartName & " nicht konsistent! Fortfahren?" ' Meldung definieren.
Stil = vbYesNo + vbCritical + vbDefaultButton2 ' Schaltflächen definieren.
Titel = "MsgBox-Demonstration" ' Titel definieren.
Antwort = MsgBox(Mldg, Stil, Titel) ' Meldung anzeigen.
If Antwort = vbYes Then ' Benutzer hat "Ja" gewählt.
Else ' Benutzer hat "Nein" gewählt.
Exit Sub
End If
End If
totalGroupWeight = totalGroupWeight + Worksheets("HULL WCOG").Cells(actRow, 5)
End If
totalWeight = totalWeight + Worksheets("HULL WCOG").Cells(actRow, 5)
actRow = actRow + 1
Loop
totaladdedGroupWeight = totaladdedGroupWeight + totalGroupWeight
Worksheets("HULL WCOG").Cells(actGroupNumber, 14) = actGroup
Worksheets("HULL WCOG").Cells(actGroupNumber, 15) = totalGroupWeight
Worksheets("HULL WCOG").Cells(actGroupNumber + 2, 14) = "Total Weight"
Worksheets("HULL WCOG").Cells(actGroupNumber + 2, 15) = totalWeight
Worksheets("HULL WCOG").Cells(actGroupNumber + 3, 14) = "Total Added Group Weight"
Worksheets("HULL WCOG").Cells(actGroupNumber + 3, 15) = totaladdedGroupWeight
Next
If bEintrag Then iZeile = iZeile + 1 'mindestens ein Eintrag erfolgt, daher neue Zeile
End If
Next
Workbooks(sWbName).Saved = True
Workbooks(sWbName).Close
Next
Application.ScreenUpdating = True
' gives control of the statusbar back to the programme
End Sub
was mache ich den falsch ????
Leute bitte Hiiiilfeeeeeeeee!!!!!!!!!!!!!!!!!!!!!!!!