Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1536to1540
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

Combobox Jahr auswählen und als Überschrift

Combobox Jahr auswählen und als Überschrift
24.01.2017 13:40:57
Tom
Guten Tag,
Ich hätte ein Anliegen vll kann mir jmd helfen. Ich mächte über eine Userform mit einer ComboBox eine Jahr auswählen können welches dann in die Überschriften verschiedener Tabellen geschrieben wird. Diese Tabellen sind in unterschiedlichen Worksheets aber in einer Arbeitsmappe kann mir jmd helfen?

35
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Combobox Jahr auswählen und als Überschrift
24.01.2017 15:11:53
UweD
Hallo
wann genau soll das geschehen?
Wenn du auswählst,
oder ,wenn die Box verlassen wird
Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Sheets("Tabelle1").Range("A2") = ComboBox1.Value
Sheets("Tabelle2").Range("Z1") = ComboBox1.Value
Sheets("Tabelle3").Range("B10") = ComboBox1.Value
End Sub
oder wenn du einen Button drückst
Private Sub CommandButton1_Click()
Sheets("Tabelle1").Range("A2") = ComboBox1.Value
Sheets("Tabelle2").Range("Z1") = ComboBox1.Value
Sheets("Tabelle3").Range("B10") = ComboBox1.Value
End Sub
oder...
LG UweD
Anzeige
AW: Combobox Jahr auswählen und als Überschrift
24.01.2017 15:14:20
Tom
Ich habe eine Überschrift über mehrere Tabellen und z.b. "Das leben war schön in 2013" und in der CamboBox will ich das Jahr auswählen und dadurch wird 2013 über all durch 2012 z.b. ersetzt.
AW: Combobox Jahr auswählen und als Überschrift
24.01.2017 16:15:35
Tom
Gibt es hierfür eine Lösung? :( Ich hoffe sehr das mir jemand helfen kann!
AW: Combobox Jahr auswählen und als Überschrift
24.01.2017 16:25:15
UweD
Hi
- sind die Zellen in den einzelnen Blättern bekannt?
- ist die Jahreszahl bekannt, die Ausgetauscht werden soll
- ist der umgebende Text immer gleich?


TIPP: Wenn deine Frage unzureichend beantwortet ist, den Haken bei "Aktiviere das Kontrollkästchen, wenn die Frage mit diesem Beitrag nicht beantwortet wurde und der Thread weiter bei den offenen Fragen angezeigt werden soll" setzen
Anzeige
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 06:44:06
Tom
Hallo Jahreszahl ist halt von 2011 bis 2020! Die Überschriften sind in einer verbundenen Zeile und der Text ist nicht immer gleich.
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 06:58:52
Tom
Ich könnte die Jahreszahl auch in einer sperrate Zelle schreiben. Wenn dieses helfen würde?
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 08:24:54
UweD
Hallo nochmal
in dem Fall kannst du doch das ursprüngliche Makro von mir nehmen.
Dann sind die Zellen ja bekannt.

Private Sub CommandButton1_Click()
Sheets("Tabelle1").Range("A2") = ComboBox1.Value
Sheets("Tabelle2").Range("Z1") = ComboBox1.Value
Sheets("Tabelle3").Range("B10") = ComboBox1.Value
End Sub
Die Blattnamen und die Zellen kannst du ja einfach ergänzen, bzw. abändern
LG UweD
Anzeige
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 08:35:52
Tom
Eine schönere Lösung gibt es nicht so Hilfsvariabel oder sonst irgendwas?
Vielen Dank trotzdem schonmal für alles
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 08:45:12
EtoPHG
Hallo Tom,
Schreib die Auswahl in eine benannte, versteckte Zelle auf ein Blatt deiner Arbeitsmappe (z.B.):
Private Sub CommandButton1_Click()
Range("DasTextJahr") = ComboBox1.Value

Passe deine Formeln in den Titelzellen an (z.B.):
="Das ist der Text für das Jahr" & DasTextJahr & ", schöne Grüsse"

Gruess Hansueli
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 08:54:55
Tom
Vielen Dank an sowas habe ich gedacht nur leider erschein Laufzeitfehler 1004.
Anzeige
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 09:12:51
UweD
Hallo
dann hast du die Zelle nicht "Benannt"
- Die (versteckte) Zelle markieren
- Formeln, Namen definieren
- DasTextJahr als Name eintragen
- OK
LG UweD
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 09:27:24
Tom
Wäre es möglich nur mal eine Codevorlage zu schicken das ich es anpassen kann?
Das wäre sehr lieb, vielen Dank im Voraus.
AW: umgekehrt wird ein Schuh draus..
25.01.2017 09:30:26
UweD
.. lade mal ein Beispielmappe hoch.
LG UweD
AW: umgekehrt wird ein Schuh draus..
25.01.2017 11:43:20
UweD
Hallo
- wie bereits geschrieben: einmal händisch den Namen DasTextJahr vergeben
- Das Update habe ich auf den Button gelegt.
Private Sub CommandButton1_Click()
    Worksheets(1).Range("DasTextJahr").Value = Me.ComboBox1.Value
    Me.Hide
End Sub

Private Sub UserForm_Initialize()
    With Me.ComboBox1
        .AddItem "2010"
        .AddItem "2011"
        .AddItem "2012"
        .AddItem "2013"
        .AddItem "2014"
        .AddItem "2015"
        .AddItem "2016"
        .AddItem "2017"
        .AddItem "2018"
        .AddItem "2019"
        .AddItem "2020"
        .AddItem "2021"
        .AddItem "2022"
        .AddItem "2023"
        .ListIndex = 3 'Vorbelegung "2013" bei Formularstart 
    End With

End Sub

Deine geänderte Datei https://www.herber.de/bbs/user/110864.xlsm
LG UweD
Anzeige
AW: umgekehrt wird ein Schuh draus..
25.01.2017 13:18:07
Tom
Wahnsinn vielen vielen dank!! Hätte noch ein kleines Anliegen, wenn ich die Datei dann speicher nachdem das Makro durchgelaufen ist. Bekommt man es so hin, dass bei dem Speichervorgang automatisch die Jahreszahl mit in den Speichername reingeschrieben wird?
AW: umgekehrt wird ein Schuh draus..
25.01.2017 13:45:39
UweD
Hallo
Code muss in den Bereich von "DieseArbeitsmappe"
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    On Error GoTo Fehler
    Dim NName As String
    Cancel = True
    NName = Worksheets(1).Range("DasTextJahr").Value & " " & ThisWorkbook.Name
    Application.EnableEvents = False
    ThisWorkbook.SaveAs NName
    
    Err.Clear
Fehler:
    Application.EnableEvents = True
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & vbLf & Err.Description: Err.Clear
End Sub

Hier hast du noch weiteren Code drin. Der soll normal in ein normales Modul
Den kannst du auch verkürzen. Auf select kann in 99% verzichtet werden.
Sub Makro1()
    ' MVT 1 Seite 1 befüllen von Tab1.3 
    Sheets("Tab1.3").Range("E16:U38").Copy
    Sheets("MVT 1 Seite 1").Range("E14:U36").PasteSpecial _
        Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Tab1.3").Range("E40:U62").Copy
    Sheets("MVT 1 Seite 1").Range("E40:U62").PasteSpecial _
        Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Tab1.3").Range("E64:U86").Copy
    Sheets("MVT 1 Seite 1").Range("E66:U88").PasteSpecial _
        Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Call Makro2
End Sub

die Anderen analog
LG UweD
Anzeige
AW: umgekehrt wird ein Schuh draus..
26.01.2017 06:41:38
Tom
Vielen Dank für die schnelle Antwort ich würde aber gern nur die Tabellen 2-5 speichern als xlsx ist das möglich?
AW: umgekehrt wird ein Schuh draus..
26.01.2017 07:54:41
Tom
und das die andere Datei sich schließt. Das wäre wirklich sehr toll!
AW: umgekehrt wird ein Schuh draus..
26.01.2017 08:52:32
UweD
Hi
lösche das Workbook_BeforeSave aus DieseArbeitsmappe wieder raus.
Und das hier in ein Modul

Sub SpeichernAls()
On Error GoTo Fehler
Dim Pfad As String, NName As String, Ext As String, WB As Workbook, Jahr As String
Pfad = "C:\Temp\Test\"
NName = "Das wäre der Name"
Ext = ".xlsx"
Jahr = Worksheets(1).Range("DasTextJahr").Value
Sheets(Array("MVT 1 Seite 1", "MVT 1 Seite 2", "MVT 1 Seite 3", "MVT 1 Seite 4", _
"MVT 1 Regional")).Copy
ActiveSheet.SaveAs Filename:=Pfad & NName & "_" & _
Jahr & Ext, FileFormat:=xlOpenXMLWorkbook
ThisWorkbook.Close True
Err.Clear
Fehler:
Application.EnableEvents = True
If Err.Number  0 Then MsgBox "Fehler: " & _
Err.Number & vbLf & Err.Description: Err.Clear
End Sub
LG UweD
Anzeige
AW: umgekehrt wird ein Schuh draus..
26.01.2017 10:17:50
Tom
Da erscheint eine Fehlermeldung einmal das ohne Makros gespeichert wird und dann Fehler 1004 Pfad nicht vorhanden oder Dokument. Wäre es möglich den Pfad auszuwählen wohin das gespeichert werden soll?
AW: umgekehrt wird ein Schuh draus..
26.01.2017 10:18:06
Tom
Da erscheint eine Fehlermeldung einmal das ohne Makros gespeichert wird und dann Fehler 1004 Pfad nicht vorhanden oder Dokument. Wäre es möglich den Pfad auszuwählen wohin das gespeichert werden soll?
AW: umgekehrt wird ein Schuh draus..
26.01.2017 12:39:07
Tom
Da erscheint eine Fehlermeldung einmal das ohne Makros gespeichert wird und dann Fehler 1004 Pfad nicht vorhanden oder Dokument. Wäre es möglich den Pfad auszuwählen wohin das gespeichert werden soll?
Anzeige
AW: umgekehrt wird ein Schuh draus..
26.01.2017 13:38:24
UweD
Hallo
zu 2)
Du hast zwar keinen Excel/VBA Level angegeben, aber in der Musterdatei bewiesen, dass du
Makros anpassen kannst.
Ich habe das Makro bei mir getestet.
Wenn dort steht, Pfad nicht vorhanden..
musst du natürlich an deine Gegebenheiten anpassen. Achte auf das abschließende \
Pfad = "C:\Temp\Test\" 'das ist MEIN Speicherpfad
NName = "Das wäre der Name"
ebenso der gewünschte Dateiname.
zu 1)
- das Makro muss in die Datei, wo du per Userform auswählst
- durch Sheets(Array("M... werden nur die anderen Blätter in eine neue Datei kopiert
= Ich habe nachgesehen, in den Blättern selbst ist bei dir kein Code enthalten
= Also darf die Meldung "ohne Makros gespeichert wird" nicht erscheinen
- durch ActiveSheet.SaveAs .. wird die neu geöffnete/erzeugte Datei gespeichert als xlsx
Wie gesagt, bei mir ohne Probleme
LG UweD
AW: umgekehrt wird ein Schuh draus..
26.01.2017 13:58:03
Tom
Mit den Makros hab ich bereist deaktiviert!! Tut mir leid wenn ich zuviele Fragen stelle ich will sie wirklich nicht verärgern! Ich würde gern die neu erstellte Datei speichern unter ein Wunschpfad mit Dialog!! Nicht unter einen festen Pfad und die andere Datei kann geschlossen werden ohne zu speichern. In den Code den Sie mir zur Verfügung gestellt haben speichert er die alte Datei immer unter einen Wunschpfad mit Dialog. Wenn wir das noch klären könnten wäre ich vollkommen zufrieden und wäre Ihnen sehr dankbar!
AW: umgekehrt wird ein Schuh draus..
26.01.2017 16:28:54
UweD
Hallo
so?
Option Explicit 
 
Sub SpeichernAls() 
    Dim Pfad As String, NName As String, Ext As String, Jahr As String 
    Dim Dlg As FileDialog 
    On Error GoTo Fehler 
     
    '** Anpassungen 
    Pfad = "C:\Temp\Test\" 'Der Startpfad 
    NName = "Das wäre der Name" 
    Ext = ".xlsx" 
    '** 
     
    Jahr = Worksheets(1).Range("DasTextJahr").Value 
     
    'Verzeichnis wählen 
    Set Dlg = Application.FileDialog(msoFileDialogFolderPicker) 
    With Dlg 
        .AllowMultiSelect = False 
        .InitialFileName = Pfad 
        .Title = "Speicherort auswählen" 
    End With 
     
    If Dlg.Show = True Then 
        Pfad = Dlg.SelectedItems(1) & "\" 
         
        'Neue Datei erstellen 
        ThisWorkbook.Sheets(Array("MVT 1 Seite 1", "MVT 1 Seite 2", "MVT 1 Seite 3", _
            "MVT 1 Seite 4", "MVT 1 Regional")).Copy 
         
        'Die neue Datei speichern 
        ActiveSheet.SaveAs Filename:=Pfad & NName & "_" & Jahr & Ext, _
            FileFormat:=xlOpenXMLWorkbook 
         
        'Die ursprüngliche Datei schliessen 
        ThisWorkbook.Close True 'False= ohne speichern schliessen 
         
    End If 
    Err.Clear 
Fehler: 
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & vbLf & Err.Description: Err.Clear 
End Sub 

LG UweD
AW: umgekehrt wird ein Schuh draus..
27.01.2017 06:30:50
Tom
Leider nicht der speichert immer die erste Datei mit den Makro und nicht die neu erstellte.
AW: umgekehrt wird ein Schuh draus..
27.01.2017 09:27:27
UweD
Hallo
Lässt du das Makro im Einzelschrittmodus durchlaufen und wechselst evtl währenddessen die Datei?
Es kann nur an der aktivierung der 2 Dateien liegen, dass diese vertauscht werden.
Hier ein workarround, wo die Dateien explizit benannt werden.
Bitte änder im Kopf den Dateinamen auf deine Datei ab.
Sub SpeichernAls()
    Dim Pfad As String, NName As String, Ext As String, Jahr As String
    Dim Dlg As FileDialog, WBM As Workbook, WBNeu As Workbook
    On Error GoTo Fehler
    
    '** Anpassungen 
    Set WBM = Workbooks("Master.xlsm") ' Diese Datei 
    Pfad = "C:\Temp\Test\" 'Der Startpfad 
    NName = "Das wäre der Name"
    Ext = ".xlsx"
    '** 
    
    Application.ScreenUpdating = False
    Jahr = WBM.Worksheets(1).Range("DasTextJahr").Value
    
    'Verzeichnis wählen 
    Set Dlg = Application.FileDialog(msoFileDialogFolderPicker)
    With Dlg
        .AllowMultiSelect = False
        .InitialFileName = Pfad
        .Title = "Speicherort auswählen"
    End With
    
    If Dlg.Show = True Then
        Pfad = Dlg.SelectedItems(1) & "\"
        
        'Neue Datei erstellen 
        Set WBNeu = Workbooks.Add
        
        'Blätter kopieren 
        WBM.Sheets(Array("MVT 1 Seite 1", "MVT 1 Seite 2", "MVT 1 Seite 3", _
            "MVT 1 Seite 4", "MVT 1 Regional")).Copy after:=WBNeu.Sheets(1)
        
        'Erstes Blatt der Neuen Datei löschen 
        Application.DisplayAlerts = False
        WBNeu.Sheets(1).Delete
        Application.DisplayAlerts = True

        'Die neue Datei schpeichern 
        WBNeu.SaveAs Filename:=Pfad & NName & "_" & Jahr & Ext, _
            FileFormat:=xlOpenXMLWorkbook
        
        'Die ursprüngliche Datei achliessen 
        WBM.Close True 'False= ohne speichern schliessen 
    End If
    Err.Clear
Fehler:
    Application.DisplayAlerts = True
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & vbLf & Err.Description: Err.Clear
End Sub

LG UweD
AW: umgekehrt wird ein Schuh draus..
27.01.2017 09:56:43
Tom
Es ist schon fast perfekt wirklich vielen vielen dank!! Trotzdem speichert das Makro immernoch die "Master Datei" die ich auch umbenannt habe!
AW: umgekehrt wird ein Schuh draus..
27.01.2017 10:07:24
UweD
Hallo
das ist nun mein letzter Beitrag:
hast du das hier auch auf FALSE gesetzt? (so wie im Code vermerkt)
WBM.Close True 'False= ohne speichern schliessen
WBM.Close False 'False= ohne speichern schliessen
LG UweD
AW: umgekehrt wird ein Schuh draus..
27.01.2017 10:33:49
Tom
Ja hab ich ich schau mal ob ich es selber lösen kann. Recht vielen Dank für die Großzügige hilfe, ich bin Ihnen sehr dankbar!
offen für alle
27.01.2017 10:44:32
UweD
Nicht das gemacht, was vorgeschlagen! ...
25.01.2017 11:58:56
EtoPHG
Hallo Tom,
Bei Excel gut bin ich davon ausgegangen, dass du eine Zelle mit einem Namen versehen kannst, das Verstecken ist optional, aber auch Voraussetzung für das Level.
Gruess Hansueli
AW: Combobox Jahr auswählen und als Überschrift
25.01.2017 08:20:38
UweD
Guten Morgen
Das Problem ist,
1) Entweder das Makro durchsucht alle Zellen der Blätter nach einem bekannten Suchbegriff
(hier wäre das z.B. die bekannte Zahl 2011) und tauscht diese
2) oder es tauscht in vorher benannten Zellen den Inhalt (egal was da vorher stand) in die neue Jahreszahl.
Bei dir sehe ich ein Mischung aus Beidem

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige