Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1396to1400
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

Excel Tabellenblatt mit Makro anlegen

Excel Tabellenblatt mit Makro anlegen
04.12.2014 13:15:23
Torsten
Hallo Zusammen,
leider habe ich nicht den richtigen Lösungsansatz finden können. Deswegen hoffe ich das ihr mir helfen könnt. Ist bestimmt ganz simpel :)
Ich habe eine Excel Tabelle mit dem Namen "Test1" in der ich verschiedene Daten Eingebe und über Formeln berechnen lasse, diese variieren von Mitglied zu Mitglied. Jetzt habe ich mir ein Makro gebaut das ein neues Tabellenblatt an legt und so umbenennt das der Name des Mitglieds xyz welcher in Zelle A2 genommen wird. Nun werden verschiedene Ergebnisse aus dem ersten Tabellenblatt in das neu angelegte Tabellenblatt NameMitglied_xyz kopiert. Soweit so gut und alles funktioniert.
Nun zum Problem:
Ich weiß nicht wie ich es dem Makro beibringen kann bei einem neuen Namen als beispiel NameMitglied_abc ein neues Tabellenblatt anzulegen und die neuen Werte aus Tabelle "Test1" in die Tabelle zu kopieren.
Ich hoffe das ist einigermaßen verständlich. :)
Danke schonmal vorab für eure Hilfe!:)
Torsten
Hier der Code:
Sub Makro9()
'Tabellenblatt Umbenennen
Dim Bereich As String
Dim Zelle As Range
Dim Tabelle As Worksheet
Bereich = "A2"
With ActiveWorkbook
For Each Zelle In ActiveSheet.Range(Bereich).Cells
Set Tabelle = .Sheets.Add(After:=.Sheets(Sheets.Count))
Tabelle.Name = Zelle.Text
Next Zelle
End With
'Werte aus Test1 werden kopiert
Sheets("Test1").Select
Range("A1:C1").Select
Selection.Copy
ActiveWorkbook.Worksheets(2).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Test1").Select
Application.CutCopyMode = False
Range("A2:C2").Select
Range("C2").Activate
Selection.Copy
ActiveWorkbook.Worksheets(2).Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWorkbook.Worksheets(2).Select
Application.CutCopyMode = False
Range("F2").Select
Selection.Copy
ActiveWorkbook.Worksheets(2).Select
Range("F1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Test1").Select
Application.CutCopyMode = False
Range("F3:F23").Select
Selection.Copy
ActiveWorkbook.Worksheets(2).Select
Range("F2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWorkbook.Worksheets(2).Select
Range("M3:M23").Select
Application.CutCopyMode = False
Selection.Copy
ActiveWorkbook.Worksheets(2).Select
Range("H2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Test1").Select
Application.CutCopyMode = False
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Excel Tabellenblatt mit Makro anlegen
04.12.2014 14:44:31
yummi
Hallo Thorsten,
das kopiert dir alle Zeilen von A:C auf dein neues Blatt (wenn denn keine Leerzellen in Spalte A sind.

Sub Makro9()
'Tabellenblatt Umbenennen
Dim Bereich As String
Dim Zelle As Range
Dim Tabelle As Worksheet
Dim wks As Worksheet
Dim last As Long
Dim i As Long
Dim strRange As String
Set wks = ActiveWorkbook.Sheets(1)
Bereich = "A2"
With ActiveWorkbook
For Each Zelle In ActiveSheet.Range(Bereich).Cells
Set Tabelle = .Sheets.Add(After:=.Sheets(Sheets.Count))
Tabelle.Name = Zelle.Text
Next Zelle
End With
last = wks.Cells(wks.Rows.Count, 1).End(xlUp).Row   'letzte Zeile in Spalte A
'Werte aus Test1 werden kopiert
For i = 1 To last
strRange = "A" & i & ":C" & i
wks.Range(strRange).Copy Tabelle.Range(strRange)
Next i
End Sub
Gruß
yummi

Anzeige
AW: Excel Tabellenblatt mit Makro anlegen
05.12.2014 09:18:09
TorstenPesch
Hallo Yummi,
vielen Dank für deine Hilfe! Klappt Super!
Wie kann ich es jetzt noch bewerkstelligen das ich nur die Spalten z.B.: A,B und D kopiere und nicht C?
'Werte aus Test1 werden kopiert
For i = 1 To last
strRange = "A" & i & ":C" & i
wks.Range(strRange).Copy Tabelle.Range(strRange)
Next i
Danke dir!
Grüße,
Torsten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige