Anzeige
Archiv - Navigation
1668to1672
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Probleme nach Tabellenblattkopie

Probleme nach Tabellenblattkopie
22.01.2019 10:39:41
Johanna
Hallo,
ich habe folgendes Makro erstellt:

Private Sub CommandButton2_Click()
i = Sheets.Count
Sheets("Planungseinheit (1)").Copy After:=Sheets(i)
Sheets(i + 1).Activate
Rows("45:49").EntireRow.Hidden = True
CheckBox10.Value = False
End Sub

Jetzt habe ich trotz der Aktivierung der neu erzeugten Tabelle das Problem, dass Excel mir die Reihen 45 bis 49 immer auf der Originaltabelle ausblendet, statt wie gewollt auf der gerade neu erzeugten.
Das gleiche Problem bei CheckBox10. Da entnimmt er den Haken jetzt auch immer in der Originaltabelle, statt in der neu erzeugten.
Woran kann das liegen? Habe ich einen Fehler im Code?

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Probleme nach Tabellenblattkopie
22.01.2019 10:42:58
Sepp
Hallo Johanna,
versuche es so.
Private Sub CommandButton2_Click()
  Dim i As Long
  i = Sheets.Count
  Sheets("Planungseinheit (1)").Copy After:=Sheets(i)
  With Sheets(i + 1)
    .Rows("45:49").EntireRow.Hidden = True
    .CheckBox10.Value = False
  End With
End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Probleme nach Tabellenblattkopie
22.01.2019 10:49:14
Daniel
Jep, ist immer besser genau zu definieren, welche Zellen auf welchem Tabellenblatt du ansprechen möchtest. Ansonsten riskierst du halt solche Probleme.
Grüße
Daniel
AW: Probleme nach Tabellenblattkopie
22.01.2019 10:58:49
Johanna
super!
Das hat geklappt!
Dankeschön!!
AW: Probleme nach Tabellenblattkopie
22.01.2019 10:58:41
Daniel
Hi
wenn du Zellreferenzen (Range, Cells, Rows, Columns) oder Tabellenblattobjekte (Checkbox) verwendest ohne das jeweilige Tabellenblatt anzugeben, so hängt es davon ab, wo der Code steht:
- in einem allgemeinen Modul wird dann immer das gerade aktive Tabellenblatt verwendet
- in einem Tabellenblattmodul wird das Tabellenblatt des Moduls verwendet.
da du vermutlich einen ActiveX-Commandbutton verwendest, liegt auch der Code im Modul des Tabellenblatts und dieses wird verwendet, wenn du nichts angibst.
du kannst entweder wie von Sepp vorgeschlagen das Tabellenblatt über seine Indexnummer ansprechen, oder du gibt's Explizit an, dass das aktive Blatt verwendet werden soll:
Private Sub CommandButton2_Click()
i = Sheets.Count
Sheets("Planungseinheit (1)").Copy After:=Sheets(i)
Sheets(i + 1).Activate
ActiveSheet.Rows("45:49").EntireRow.Hidden = True
ActiveSheet.CheckBox10.Value = False
End Sub
der Befehl Sheets(i + 1).Activate ist überflüssig, da VBA beim kopieren oder neuanlegen das neue Tabellenblatt automatisch aktiviert.
wenn du ganz sicher gehen willst, dass das neue Blatt bearbeitet wird, kannst du auch die WITH-Klammer verwenden:
Private Sub CommandButton2_Click()
i = Sheets.Count
With Sheets("Planungseinheit (1)").Copy(After:=Sheets(i))
.Activate
.Rows("45:49").EntireRow.Hidden = True
.CheckBox10.Value = False
End with
End Sub
Gruß Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige