Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
25.08.2008 12:13:12 |
maddin |
|
|
|
25.08.2008 15:17:44 |
maddin |
|
|
Aw:Prozedur bei Aufruf eines Tabellenblattes start |
26.08.2008 10:35:23 |
Holger |
|
|
Von:
Holger |
Datum:
26.08.2008 10:35:23 |
Views:
895 |
Rating:
|
Antwort:
|
Thema:
Aw:Prozedur bei Aufruf eines Tabellenblattes start |
Hallo maddin,
ein automatisches Kopieren beim Aktivieren des Tabellenblattes würde die Funktion auch bei jeder Aktualisierung des Worksheets Blatt 1 auslösen (Ändern, Sortieren, ...), ganz abgesehen davon, dass du Blatt 1 gar nicht mehr erreichst, solange automatisch auf Blatt2 zurückgesprungen werden soll. Falls das tatsächlich gewünscht ist, kannst du den Code in den Codeteil der Tabelle Blatt 1 (nicht in ein Modul) schreiben. Den Codeteil erreichst du, indem du mit der rechten Maustaste auf den Reiter des Tabellenblattes klickst und Code anzeigen wählst oder auf dem VBA-Bildschirm im Projektfenster unter deinem VBA-Projekt - Excel-Objekte deine Tabelle auswählst.
Private Sub Worksheet_Activate()
Static a As Boolean
If a = True Then a = False: Exit Sub
Range("A8:F31").Copy
a = True
Worksheets("Blatt 2").Range("A2").PasteSpecial
Worksheets("Blatt 2").Select
End Sub
Wahrscheinlich richtest du dir besser auf Blatt 1 oder 2 einen CommandButton ein, mit dem du Aktion auslöst. Der Code für diesen CommandButton wäre z.B.
Worksheets("Blatt 1").Range("A8:F31").Copy
Worksheets("Blatt 2").Range("A2").PasteSpecial
Worksheets("Blatt 2").Select
Gruß
Holger
maddin schrieb am 25.08.2008 12:13:12:
Hallo zusammen,
ich versuche mich fast ohne vorkenntnisse im vba@excel,
und habe nun eine wahrscheinlich sehr kleine und doofe frage, finde aber leider nirgends eine antwort.
Ich möchte eine Tabelle mit diversen Daten aus einem Tabellenblatt (die sich dort permanent ändert durch hinzufügen/löschen/ändern/sortieren von Daten) bei Aufruf eines zweiten Tabellenblattes identisch übernehmen.
Theoretisch könnte ich bei jedem hinzufügen/löschen etc. die Prozedur einfach dranhängen, aber dann springt er nach jeder Änderung von einem Tabellenblatt zum anderen (was ich sehr unschick finde ;D)
Meine Idee war:
_______________________________
Sub Listekopieren()
' Listekopieren
If Sheets("Blatt 2") = ActiveSheet Then
Sheets("Blatt 1").Select
Range("A8:F31").Select
Selection.Copy
Sheets("Blatt 2").Select
Range("A2").Select
ActiveSheet.Paste
End If
End Sub
______________________________
Funktioniert natürlich nicht ^^
Vielen Dank schon mal für die Hilfe!
P.S. Gibt es eine unselect funktion? auch da bin ich nicht fündig geworden :( |
- 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
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- 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
|
|
25.08.2008 12:13:12 |
maddin |
|
|
|
25.08.2008 15:17:44 |
maddin |
|
|
Aw:Prozedur bei Aufruf eines Tabellenblattes start |
26.08.2008 10:35:23 |
Holger |
|
|