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

Bezug auf Tabellenblätter in VBA

Bezug auf Tabellenblätter in VBA
22.04.2023 09:27:35
Florian

Hi Leute,

in meinem Code habe ich eine Sub, mit welcher in Daten in verschiedene Tabellenblätter importiere, die alle gleich aussehen. Die Tabellenblätter haben den Namen Unternehmen 1, Unternehmen 2, usw.

Mit diesem Code importiere ich die Daten:

Sub ImportAuswertung(intUnternehmen As Integer)
    
    Dim Dateiname
    Dim wbQuelle As Workbook
    Dim wksZiel As Worksheet, wksQuelle As Worksheet
    Dim strUnternehmenTab As String, strUnternehmenKurz As String
    
    strUnternehmenTab = "Unternehmen " & intUnternehmen
    strUnternehmenKurz = "UN" & intUnternehmen & "_"
    
    Set wksZiel = ThisWorkbook.Sheets(strUnternehmenTab)
    
    Dateiname = Application.GetOpenFilename(filefilter:="xlsm-Dateien (*.xlsm), *.*)", Title:="Import")
    
    If Dateiname = "Falsch" Then
        MsgBox "Keine Datei ausgewählt", vbExclamation
        Exit Sub
    Else
        
        Application.ScreenUpdating = False
        
        Set wbQuelle = Workbooks.Open(Dateiname)
        Set wksQuelle = wbQuelle.Sheets("Auswertung")
        
        wksQuelle.Range("C8:H8").Copy
        wksZiel.Range("C5:H5").PasteSpecial Paste:=xlValues
        
        wksQuelle.Range("C11:H11").Copy
        wksZiel.Range("C6:H6").PasteSpecial Paste:=xlValues
        
        wksQuelle.Range("C17:H17").Copy
        wksZiel.Range("C7:H7").PasteSpecial Paste:=xlValues
        
        wksQuelle.Range("C18:H18").Copy
        wksZiel.Range("C8:H8").PasteSpecial Paste:=xlValues
        
        usw...
        
        wbQuelle.Close savechanges:=False
    
    End If
       
End Sub


Nun würde ich gerne ermöglichen, dass die Tabellenblätter umbenannt werden können. Allerdings funktioniert dann ja der Import nicht mehr. Die Tabellen haben in VBA die Namen tabUnternehmen1, tabUnternehmen2 usw.

Kann ich meinen Code auch so ändern, dass ich anstatt "Frontend-"-Tabellennamen den Tabellennamen in VBA fortlaufend mit der Nummer anspreche?

Danke Euch!
Flo

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bezug auf Tabellenblätter in VBA
22.04.2023 11:06:03
GerdL
Hallo Florian!
'................
Dim X As Worksheet

For Each X In ThisWorkbook.Worksheets
    If X.CodeName = "tabUnternehmen" & intUnternehmen Then
        Set wksZiel = X: Exit For
    End If
Next
If wksZiel Is Nothing Then
    MsgBox "Zielblatt fehlt": Exit Sub
End If
'...........................
Gruß Gerd


AW: Bezug auf Tabellenblätter in VBA
24.04.2023 06:50:49
Florian
Top, Danke!

Anzeige

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige