MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 13.12.2017, 07:31   #1
LeinadD
Neuer Benutzer
Neuer Benutzer
Tipp VBA - Daten in anderes Worksheet übertragen

Guten Morgen,

ich möchte je nach Wochentag in meiner UF (siehe BSP Datei) wählen um dann die unter dem Wochentag stehenden Daten in das andere Tabellenblatt zu übertragen. In diesem tabellenblatt möchte ich immer nur einen Tag stehen haben.
Bin auch für Lösungsansätze dankbar. In der BSP Datei ist das Problem genau zu erkennen. Der Ansatz wie ich mir das vorstelle ist bereits Programmiert.

Danke für eure Hilfe, Gruß
Angehängte Dateien
Dateityp: xlsm ForumBsp.xlsm (22,6 KB, 7x aufgerufen)
LeinadD ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.12.2017, 07:51   #2
MisterBurns
MOF Koryphäe
MOF Koryphäe
Standard

Hallo Gruß,

ich hab´s mal ganz primitiv mit dem Makrorekorder mittels Suchen und Copy/Paste gelöst. Ist nicht schön, aber es funktioniert.

Code:

Private Sub CB_2_Click()



If OB_Montag = True Then

    Cells.Find(What:="Montag", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Sheets("Tabelle2").Select
    Range("H15").Select
    ActiveSheet.Paste

ElseIf OB_Dienstag = True Then

    Cells.Find(What:="Dienstag", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Sheets("Tabelle2").Select
    Range("H15").Select
    ActiveSheet.Paste

ElseIf OB_Mittwoch = True Then

    Cells.Find(What:="Mittwoch", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Sheets("Tabelle2").Select
    Range("H15").Select
    ActiveSheet.Paste

End If

End Sub
Du solltest halt den Zielbereich vorher noch löschen, denn wenn man zB Dienstag einfügt, bleibt die zweite Spalte von Montag bzw. Mittwoch erhalten.

__________________

Schöne Grüße
Berni
MisterBurns ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.12.2017, 08:45   #3
LeinadD
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard Danke!, allerdings...

wenn ich die Range z.B auf B2 ändere, also die Daten irgendwo anderst hinhaben möchte dann wird eine Fehlermeldung beim Befehl ActiveSheet.Paste angezeigt.

Und wo kann ich hier den Bereich in Tabelle1 auswählen den ich transferieren möchte. Ist ja nur als beispiel gedacht. Den Code versteh ich nicht, sorry. Vielleicht kannst du mir das erklären.

Gruß
LeinadD ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.12.2017, 09:16   #4
MisterBurns
MOF Koryphäe
MOF Koryphäe
Standard

Gruß ist ja wirklich ein ungewöhnlicher Name...

Code:

If OB_Montag = True Then

'Dieser Teil sucht nach dem Wort "Montag" und markiert die entsprechende Zelle
    Cells.Find(What:="Montag", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate

'Dieser Teil markiert die Spalte bis zur letzten befüllten Zeile (Achtung: Leerzeilen vermeiden!)
    Range(Selection, Selection.End(xlDown)).Select

'Markierung kopieren
    Selection.Copy

'Blatt "Tabelle2" auswählen
    Sheets("Tabelle2").Select

'Zelle H15 wählen
    Range("H15").Select

'Einfügen
    ActiveSheet.Paste
Wie gesagt, ist unschöner Makrorekordercode, kann man wesentlich eleganter machen (man ≠ ich)

Der Grund, warum es nicht geht wenn du als Zielbereich B2 eingibst, ist dass die Zellen B1 und C1 verbunden hast. Löse die Verbindung und dann geht es.

Gibt es eigentlich einen speziellen Grund, warum du die Z1S1 Bezugsart verwendest?

__________________

Schöne Grüße
Berni
MisterBurns ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.12.2017, 09:36   #5
MisterBurns
MOF Koryphäe
MOF Koryphäe
Standard

Hab grad Blödsinn geschrieben - der Grund wegen dem Zielbereich B2 war ein anderer.
Das Suchergebnis hat nicht den Wert in Zeile 1 gefunden sondern das, was in dem Text als verbundene Zelle steht. Und das kann er halt nicht in eine einzelne Zelle einfügen.

__________________

Schöne Grüße
Berni
MisterBurns ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.12.2017, 11:34   #6
LeinadD
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Ein hoch auf dich, Berni. So kann ich damit arbeiten, Merci. nein den gibt es nicht, da hab ich irgendwo draufrumgeklickt ...
LeinadD ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:25 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.