Collapse column

Autor Thema: VBA umschreiben  (Gelesen 355 mal)

Offline chisru

  • Newbie
  • *
  • Beiträge: 1
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2016
VBA umschreiben
« am: Februar 07, 2018, 11:36:04 Vormittag »
Guten Tag zusammen, ich habe einen vba code, der soweit wie ich möchte funktioniert.
nur möchte ich nicht, dass es von allen Tabellenblättern zusammenzieht, sondern nur von Tabellenblatt DEB1 und DEB2.
Kann mir da vielleicht jemand weiterhelfen ? Vielen Dank schon im Voraus.


 Sub Workbook_SheetActivate(ByVal Sh As Object)
     If Sh.Name = "Zusammenfassung" Then
         collectSheets
     End If
     
     setzeCursor
 End Sub

 Sub collectSheets()

 Application.ScreenUpdating = False 'Speedup

 Dim objWks As Worksheet
 Dim nCounter As Integer 'Anzahl Sheets
 Dim nNumWS As Integer 'aktuelles Sheet
 Dim zuLastRow As Long 'letzte Zelle aktuelles Sheet
 Dim lastRow As Long 'letzte Zelle Sheet Zusammenfassung


 nNumWS = Worksheets.Count 'Summe Sheets
 'bereite Zusammenfassung vor (lösche alte Werte)
 Sheets("Zusammenfassung").Rows("2:" & Sheets("Zusammenfassung").Cells(65536, 2).End(xlUp).Row).Delete 'Shift:=xlUp

 For nCounter = 1 To nNumWS

     Set objWks = Worksheets(nCounter) 'akuelles Sheet

     If objWks.Name <> "Zusammenfassung" Then 'ignoriere Zusammenfassung
         If WorksheetFunction.CountA(objWks.Rows(2)) > 0 Then 'wenn Zeile 2 gefüllt
             lastRow = objWks.Cells(65536, 2).End(xlUp).Row   'letzte gefüllte Zeile aktuelles Sheet
        zuLastRow = Sheets("Zusammenfassung").Cells(65536, 2).End(xlUp).Row + 1 'letzte gefüllte Zeile+1 Zusammenfassung

             objWks.Rows("2:" & lastRow).Copy Sheets("Zusammenfassung").Cells(zuLastRow, 1) ' Kopiervorgang
         End If
     End If
 Next 'nCounter

 Set objWks = Nothing 'Speicher aufräumen

 Application.ScreenUpdating = True

 End Sub

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline maninweb

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1.063
    • Profil anzeigen
    • Excel Formula Translator
  • Office-KnowHow: Experte
  • VBA-KnowHow- : Sehr gut
  • Version [Office] : Office 2016
Antw: VBA umschreiben
« Antwort #1 am: Februar 07, 2018, 17:24:10 Nachmittag »
Hallo,

auf die schnelle und ungetestet, ersetze mal ...

Code: Visual Basic
  1. If objWks.Name <> "Zusammenfassung" Then 'ignoriere Zusammenfassung

durch ...

Code: Visual Basic
  1. If Not objWks.Name <> "DEB1" Or _
  2.    Not objWks.Name <> "DEB2" Then

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) from 01/2011 - 06/2019
https://de.excel-translator.de :: Online Excel-Formel-Übersetzer :: Alle Übersetzungen der Excel Funktionen & Fehlerwerte

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.