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

Formelerweiterung über Makro

Formelerweiterung über Makro
30.01.2021 08:41:47
Sepp
Hallo Forumsgemeinde.
Ich brauche Hilfe bei einem Makro.
Status:
Ich habe mir ein kleinen Lagerbestand gebastelt. Mit einen Steuerelement lege ich mir ein neues Arbeitsblatt an. (siehe Makro). Auch das Auslesen und Einbringen von Infos aus einer Tabelle funktionieren bereits.
Nun habe ich noch ein Arbeitsblatt "Lagerbestand" mit der Formel:
{=SUMME(SUMMEWENN(INDIREKT("'BV_"&ZEILE($1:$1)&"'!D8:D107");D4;INDIREKT("'BV_"&ZEILE($1:$1) &"'!C8:C107"))) }
Das Makro soll nun mit dem neuen Anlegen eines BV-* Blattes auch die ZEILE($1:$1) in ZEILE($1:$2) erhöhen, ebeso die zweite ZEILE($1:$1) in ZEILE($1:$2).
Vorhandenes Makro:

Sub Schaltfläche1_Klicken()
Dim i As Integer, ws As Worksheet, rng As Range
For i = 1 To Worksheets.Count
On Error GoTo weiter
Sheets("BV_" & i).Select
Next i
weiter:
On Error GoTo 0
Sheets("BV_Vorlage").Copy after:=Sheets(Sheets.Count)
ActiveSheet.Name = "BV_" & i
Dim Anschrift_für_Kalender As String
Worksheets("BV_Auflistung").Select
If Worksheets("BV_Auflistung").Range("J1").Offset(1, 0)  "" Then
Worksheets("BV_Auflistung").Range("J1").End(xlDown).Select
End If
Anschrift_für_Kalender = Range("J1").End(xlDown)
Worksheets("BV_" & i).Select
Worksheets("BV_" & i).Range("B1").Select
ActiveCell.Offset(0, 0).Select
ActiveCell.Value = Anschrift_für_Kalender
End Sub

Für Hilfe und die Erweiterung des Makros wäre ich Euch sehr dankbar.
Grüße

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formelerweiterung über Makro
30.01.2021 09:02:17
Hajo_Zi
ich konnte in Deinem Code nicht sehen wo Du die Formel einträgst?
ZEILE($1:2)

AW: Formelerweiterung über Makro
30.01.2021 09:07:49
Sepp
Hallo.
Die Zelle ist G4 im Blatt "Lagerbestand"
AW: Formelerweiterung über Makro
30.01.2021 10:06:26
onur
Makrorecorder einschalten - mit "Suchen und Ersetzen ALLE" wie gewünscht ersetzen - Makrorecorder ausschaslten - fertig.
AW: Formelerweiterung über Makro
30.01.2021 10:40:36
Sepp
Hallo.
Händisch mache ich dies ja jetzt.
Nur soll es in das bestehende Makro eingebunden werden.
Das Problem ist auch noch das Schließen mit {}
Gruß
Sepp
AW: Formelerweiterung über Makro
30.01.2021 10:44:34
onur
Hast du denn nicht richtig gelesen ?
Da ist nix mit Schliessen, wenn du das exakt so machst, wie ich schrieb und das entstandene Makro in deins integrierst.
Anzeige
AW: Formelerweiterung über Makro
30.01.2021 11:16:19
Sepp
Sorry wenn ich mich einwenig dumm anstelle. Mach das zum ersten Mal.
Die Zählung erfolgt ja nur einmal von 1 auf 2.
Sprich für die Blätte BV_1 und BV_2.
Was mache ich wenn BV_3, BV_4 uws. kommt?
AW: Formelerweiterung über Makro
30.01.2021 11:17:26
onur
DAS war ja NICHT die Frage. Oder habe ich etwas übersehen?
AW: Formelerweiterung über Makro
30.01.2021 11:20:53
Sepp
Ich hätte es eindeutiger beschreiben können. Ja
AW: Formelerweiterung über Makro
30.01.2021 11:44:57
onur
Direkt hinter

Worksheets("BV_Auflistung").Select

das hier einfügen:
dim neu
neu = "$1:$" & i
Cells.Replace What:="$1:$1", Replacement:=neu, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Anzeige
AW: Formelerweiterung über Makro
30.01.2021 12:48:37
Sepp
Hall onur
Der Zellbezug liegt auf den Worksheet("Lagerbestand")auf "G4"
Ich nehme an dann kann ich nicht unter BV_Auflistung?
AW: Formelerweiterung über Makro
30.01.2021 13:06:33
Sepp
Wenn ich den Code so schreibe
Sub Schaltfläche1_Klicken()
Dim i As Integer, ws As Worksheet, rng As Range
For i = 1 To Worksheets.Count
On Error GoTo weiter
Sheets("BV_" & i).Select
Next i
weiter:
On Error GoTo 0
Sheets("BV_Vorlage").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "BV_" & i
Dim Anschrift_für_Kalender As String
Worksheets("BV_Auflistung").Select
'Dim neu
'neu = "$1:$" & i
'Cells.Replace What:="$1:$1", Replacement:=neu, LookAt:=xlPart, SearchOrder:=xlByRows,  _
MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
If Worksheets("BV_Auflistung").Range("J1").Offset(1, 0)  "" Then
Worksheets("BV_Auflistung").Range("J1").End(xlDown).Select
End If
Anschrift_für_Kalender = Range("J1").End(xlDown)
Worksheets("BV_" & i).Select
Worksheets("BV_" & i).Range("B1").Select
ActiveCell.Offset(0, 0).Select
ActiveCell.Value = Anschrift_für_Kalender
Sheets("Lagerbestand").Select
Range("G4").Select
Dim neu
neu = "$1:$" & i
Cells.Replace What:="$1:$1", Replacement:=neu, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase: _
=False, SearchFormat:=False, ReplaceFormat:=False
End Sub

dann bekomme ich in Zelle G4 den Fehler: "die Zelle ist mit der Spaltenformel inkonsistent".
Anzeige
AW: Formelerweiterung über Makro
30.01.2021 13:15:42
onur
Dann poste mal die Datei. Alles andere ist wie Blindschach spielen.
AW: Formelerweiterung über Makro
30.01.2021 17:36:58
Sepp
Eine Datei kann ich leider nicht hochladen.
Sorry.
AW: Formelerweiterung über Makro
30.01.2021 17:46:23
onur
Versuche es so:
Sheets("Lagerbestand").Replace What:="$1:$1", Replacement:=neu, LookAt:=xlPart,  _
SearchOrder:=xlByRows, MatchCase: _
=False, SearchFormat:=False, ReplaceFormat:=False

AW: Formelerweiterung über Makro
30.01.2021 18:17:05
Sepp
Nein auch net. Ich hab jetzt mal die Datei runtergespeckt auf das wesentliche.
Hier die Datei: https://www.herber.de/bbs/user/143460.xlsm
Im Blatt BV_Auflistung befindet sich ein Steuerelement "BV Anlegen"
Nach den drücken wird ein neues Blatt BV_2 angelegt.
Jetzt soll im Blatt "Lagerbestand" auch noch unter der Zelle G4 die Formel:
{=SUMME(SUMMEWENN(INDIREKT("'BV_"&ZEILE($1:$1)&"'!D8:D107");D4;INDIREKT("'BV_"&ZEILE($1:$1) &"'!C8:C107"))) }
der Eintrag $1$1 in $1$2 erhöhen. Und logischerweise Beim nächsten drücken und erstellen von BV_3 dann sich von $1$2 in $1$3 ändern.
Besser kann ich es nicht erklären.
Anzeige
AW: Formelerweiterung über Makro
30.01.2021 18:34:47
Sepp
Nein tut es nicht.
Wie ich schon schrieb. Es sollte auch bei BV_3 laufen und auch bei BV_4.
Er hört jedoch bei BV_2 zum zählen auf. Letzter Eintrag ist $1:$2
AW: Formelerweiterung über Makro
30.01.2021 18:40:48
onur
Jetzt verstehe ich, was du meinst.
https://www.herber.de/bbs/user/143462.xlsm
Denk dran: wenn du ein Blatt löschst, musst du die Formel selber ändern.
AW: Formelerweiterung über Makro
30.01.2021 18:45:27
Sepp
Jetzt mach ich 10 Kreuze. Und 10 mal Danke.
Die Blätter werden nicht gelöscht auch wenn Fehlblätter. Ich weis das ich das händisch vornehmen muss.
Trotzdem nochmal danke. Auch für die Geduld.
Gruß Sepp
Anzeige
Gerne !
30.01.2021 19:07:43
onur

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige