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

Eingabemodus ist eine Katastrophe

Eingabemodus ist eine Katastrophe
01.09.2021 16:36:20
Ralf
Hallo alle zusammen ich bin es wieder mal,
Habe mir mal laut Bildner.tv einen Eingabemodus angelegt, der sich als "chaos" darstellt. Meine Vorstellung war gewesen, das ich via einen Eingabemenü alle Erstdaten
meiner Kunden über diese Maske in der Dateibank ablegen kann. Nun stellte sich dabei heraus, das die jeweilige Zeile in der Datenbank überschrieben wird und ein andres Problem besteht darin, das in der Datenbank in div. Spalten mit Formeln stehen, die dann auch nicht in der neuen Zeile übernommen werden und natürlich der neue Datensatz nicht am Ende der Liste steht. Wenn ich dann nach Beendigung der Eingabe die Daten dann in der Datenbank ablegen will, habe ich ein wunderbares Wechselbild ( spring von Datenbank zur Eingabe jedesmal wild hin und her). Ich knasper mittlerweile seit gestern an dem Problem und komme nicht weiter.
Hätte vielleicht jemand eine Idee mittels eines Code das Problem zu lösen ?
Gruß
Ralf

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

Betreff
Datum
Anwender
Anzeige
AW: Eingabemodus ist eine Katastrophe
01.09.2021 16:43:57
Daniel
Da brauchts wahrscheinlich viele Ideen, um das Problem zu lösen.
das Springen zwischen Tabellenblättern lässt sich so wie hier beschrieben vermeiden:
https://online-excel.de/excel/singsel_vba.php?f=78
wenn du das beim Programmieren berücksichtigst, springt da nichts mehr.
der Rest, ist halt dein Denkfehler beim Programmieren.
ein VBA-Programm macht in der Regel das, was man ihm sagt.
am sinnvollsten ist, du lädst mal deine Datei hier hoch oder zeigst zumindest mal deinen Code.
was ein "Eingabemodus" ist, müsstest du auch mal erklären.
Gruß Daniel
Anzeige
AW: Eingabemodus ist eine Katastrophe
01.09.2021 17:23:43
Ralf
Guten Tag Daniel,
also das Makros ist mittels "Makros aufzeichnen", wie von Bildner.tv erklärt angelegt worden.
https://www.herber.de/bbs/user/147878.xlsm
Kannst ja mal selber einen neuen Test4 anlegen dann siehst du was ich meine. und nun stelle dir vor ich habe z.Zt. ca. 5000 Kunden in der Liste zu stehen und mein Laptop ist sicherlich nicht der langsamsta ( 8 Prozi. )
Ich glaube da kann mal nur mit einen Code weiter kommen.
Gruß
Ralf
AW: Eingabemodus ist eine Katastrophe
01.09.2021 19:34:30
Daniel
ja, sowas musst du schon selber programmieren.
hast du die Seite, die ich dir empfohlen habe, mal angeschaut?
dem Code nach zu urteilen nein.
mach das bitte zuerst und überarbeite dann deine Makos entsprechend.
Dann können wir uns um die weiteren Probleme kümmern.
zum Überschreiben der Zeile bei neueingabe:
am einfachsten ist, wenn du für eine neue Zeile immer eine Leerzeile direkt unterhalb der Überschriftenzeile einfügst.
dann arbeitest du immer mit der selben Zeile (Zeile 3) und musst dich nicht um wechselnde Zeilennummern in der Programmierung kümmern.
um die Formeln und Formate zu übernehmen, kannst du dann auch einfach die Zeile 4 in die leere Zeile 3 kopieren (mit allem) und dann die Zellen mit Inhalt mit den Werten aus deiner Maske überschreiben
bzw das übernehmen der Daten aus der Eingabetabelle in die Datenbank geht für eine Zelle am einfachsten mit diesem Code:

Sheets("Datenbank").Cells(3, 5).value = Sheets("Eingabe").Cells(2, 4).value
ein hin- und herspringen zwischen den Blättern damit nicht notwendig.
Gruß Daniel
Anzeige
.. ist eine Katastrophe --- Stimmt!
01.09.2021 20:16:29
ralf_b
dann nimm mal dies.
Wobei ich noch erwähnen sollte, das deine Formeln nicht mit in die neue Zeile übernommen werden.
Alternativ könnte man ja die Neue Zeile unten anfügen. Dein Projekt ist mir schon bekannt und du hast ja schon reichlich Hilfe bekommen. Weshalb ich echt sprachlos darüber bin was du hier an Makrorekordercode anbringst.

Sub Eingabe()
' Eingabe Makro
Dim lRow As Long
Dim sh As Worksheet
Set sh = Worksheets("Datenbank")
lRow = 20   'Festlegung der Einfügezeile
sh.Rows(lrow).Insert Shift:=xlDown
'Alternative mit Löschung der Werte aus der Quellzeile aber Beibehaltung der Formeln
'Call Zeileeinfügen(lRow, sh)
'lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row
With Sheets("Eingabe")
sh.Cells(lRow, "E").Value = .Range("D2").Value
sh.Cells(lRow, "F").Value = .Range("D4").Value
sh.Cells(lRow, "AL").Value = .Range("D6").Value
sh.Cells(lRow, "G").Value = .Range("D8").Value
sh.Cells(lRow, "P").Value = .Range("D10").Value
sh.Cells(lRow, "Q").Value = .Range("D12").Value
sh.Cells(lRow, "R").Value = .Range("D14").Value
sh.Cells(lRow, "S").Value = .Range("D16").Value
sh.Cells(lRow, "T").Value = .Range("D18").Value
sh.Cells(lRow, "U").Value = .Range("D20").Value
sh.Cells(lRow, "V").Value = .Range("D22").Value
sh.Cells(lRow, "W").Value = .Range("D24").Value
sh.Cells(lRow, "Z").Value = .Range("D26").Value
sh.Cells(lRow, "AA").Value = .Range("D28").Value
sh.Cells(lRow, "AJ").Value = .Range("D30").Value
sh.Cells(lRow, "AC").Value = .Range("H2").Value
sh.Cells(lRow, "AD").Value = .Range("H4").Value
sh.Cells(lRow, "AE").Value = .Range("H6").Value
sh.Cells(lRow, "AF").Value = .Range("H8").Value
sh.Cells(lRow, "AG").Value = .Range("H10").Value
sh.Cells(lRow, "AH").Value = .Range("H12").Value
sh.Cells(lRow, "AK").Value = .Range("H14").Value
End With
End Sub
Sub Zeileeinfügen(lRow As Long, sh As Worksheet)
' Angegebene Zeile kopieren, unterhalb Zeile einfügen und Inhalte in Zellen ohne Formel löschen
Dim Zelle As Range
Dim LetzeSpalte As Long
LetzeSpalte = sh.UsedRange.SpecialCells(xlCellTypeLastCell).Column
sh.Rows(lRow).EntireRow.Copy
sh.Cells(lRow + 1, 1).Insert Shift:=xlDown
For Each Zelle In sh.Range(sh.Cells(lRow + 1, 1), sh.Cells(lRow + 1, LetzeSpalte))
If Not Zelle.HasFormula Then
Zelle.ClearContents
End If
Next Zelle
End Sub

Anzeige
AW: .. ist eine Katastrophe --- Stimmt!
02.09.2021 10:14:57
Ralf
Ich habe mir eben den Code angeschaut und da stellt sich mir eine Frage:
unter lRow = kann man da nicht auch eingeben =MAX(Datenbank!$A$1+3)
nach meiner Überlegung wurde der neue Kunde immer am Ende meiner Liste stehen, mit der Folge, dass der neu angelegte Kunde auch gleich in meiner Maske sichbar wäre, weil ja bei einer Neueingabe sich die einzutragenden Zeile jeweils nach unten generieren würde. In der Maske wird immer der Kunde angezeigt, mit der höchsten Kd.-Nr.
Gruß
Ralf
AW: .. ist eine Katastrophe --- Stimmt!
02.09.2021 20:01:21
ralf_b
das kannst du halten wie der Dachdecker.
Mein Vorschlag nimmt deine Vorgabe als Basis. Und ich habe dir zwei Möglichkeiten dort zur Auswahl gestellt. Entweder die Einfügestelle an Zeile 20 oder die letzte Zeile.
Was du draus machst, liegt bei dir. Solange es funktioniert gibts kein besser oder schlechter.
Anzeige
AW: .. ist eine Katastrophe --- Stimmt!
02.09.2021 20:44:31
Ralf
Hallo,
wie ich schon mitteilte habe ich NULL Ahnung von Code schreiben, und bin jetzt genau so klug wie vorher. Ich weis nicht was ich wo aus dem Code rausnehmen muss oder einfügen muss. denn ich habe ja deinen gesamten Code in Makros reinkopiert.
Also die Variante wo die letzte Zeile benutzt wird wäre die richtig. ( unten immer anhängen)
Jetzt weis ich immer noch nicht was und wo ich im Code ändern oder löschen muss.
Kannst du bitte so nett sein und mir die Sache so herrichten, das ich dann nur den neuen Code in Makros ersetzen kann.
Gruß
Ralf
AW: .. ist eine Katastrophe --- Stimmt!
02.09.2021 21:12:45
ralf_b
Ist schon interessant wieviel Code in deiner Datei ist und du hast dennoch keine Ahnung davon.
Da sieht man ganz gut wie weit Jemand kommt, der sich Hilfestellungen zusammenschnorrt.
Das Hochkomma kennzeichnet Kommentare im Code, die somit nicht ausgeführt werden.
Somit kannst du Codezeilen von der Ausführung ausschließen oder eben aktiveren.
die nachfolgende Codesequenz zeigt das. Du siehst zweimal lRow = Eines davon hat ein Hochkomma davor. Klingelts?
die Zeile mit dem Insert und die Call Zeileeinfügen sind entsprechend.

lRow = 20   'Festlegung der Einfügezeile
sh.Rows(lrow).Insert Shift:=xlDown
'Alternative mit Löschung der Werte aus der Quellzeile aber Beibehaltung der Formeln
'Call Zeileeinfügen(lRow, sh)
'lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row

Anzeige
AW: .. ist eine Katastrophe --- Stimmt!
02.09.2021 21:38:10
Ralf
' lRow = 4 'Festlegung der Einfügezeile
' sh.Rows(lRow).Insert Shift:=xlDown
'Alternative mit Löschung der Werte aus der Quellzeile aber Beibehaltung der Formeln
Call Zeileeinfügen(lRow, sh)
lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row
ich habe jetzt das so geändert , da kommt aber eine Fehlermeldung
sh.Rows(lRow).EntireRow.Copy (gelb unterlegt)
AW: .. ist eine Katastrophe --- Stimmt!
03.09.2021 08:39:41
GerdL
Moin Ralf, teste mal.

Sub Eingabe()
' Eingabe Makro
Dim lRow As Long
Dim sh As Worksheet
Set sh = Worksheets("Datenbank")
'Alternative mit Löschung der Werte aus der Quellzeile aber Beibehaltung der Formeln
If IsEmpty(sh.Cells(4, 4)) Then
lRow = 4
Else
lRow = sh.Cells(2, 4).End(xlDown).Row
End If
Call Zeileeinfügen(lRow, sh)
lRow = lRow + 1
With Sheets("Eingabe")
sh.Cells(lRow, "E").Value = .Range("D2").Value
sh.Cells(lRow, "F").Value = .Range("D4").Value
sh.Cells(lRow, "AL").Value = .Range("D6").Value
sh.Cells(lRow, "G").Value = .Range("D8").Value
sh.Cells(lRow, "P").Value = .Range("D10").Value
sh.Cells(lRow, "Q").Value = .Range("D12").Value
sh.Cells(lRow, "R").Value = .Range("D14").Value
sh.Cells(lRow, "S").Value = .Range("D16").Value
sh.Cells(lRow, "T").Value = .Range("D18").Value
sh.Cells(lRow, "U").Value = .Range("D20").Value
sh.Cells(lRow, "V").Value = .Range("D22").Value
sh.Cells(lRow, "W").Value = .Range("D24").Value
sh.Cells(lRow, "Z").Value = .Range("D26").Value
sh.Cells(lRow, "AA").Value = .Range("D28").Value
sh.Cells(lRow, "AJ").Value = .Range("D30").Value
sh.Cells(lRow, "AC").Value = .Range("H2").Value
sh.Cells(lRow, "AD").Value = .Range("H4").Value
sh.Cells(lRow, "AE").Value = .Range("H6").Value
sh.Cells(lRow, "AF").Value = .Range("H8").Value
sh.Cells(lRow, "AG").Value = .Range("H10").Value
sh.Cells(lRow, "AH").Value = .Range("H12").Value
sh.Cells(lRow, "AK").Value = .Range("H14").Value
End With
End Sub
Sub Zeileeinfügen(lRow As Long, sh As Worksheet)
' Angegebene Zeile kopieren, unterhalb Zeile einfügen und Inhalte in Zellen ohne Formel löschen
Dim Zelle As Range
Dim LetzeSpalte As Long
LetzeSpalte = sh.UsedRange.SpecialCells(xlCellTypeLastCell).Column
sh.Rows(lRow).EntireRow.Copy
sh.Cells(lRow + 1, 1).Insert Shift:=xlDown
For Each Zelle In sh.Range(sh.Cells(lRow + 1, 1), sh.Cells(lRow + 1, LetzeSpalte))
If Not Zelle.HasFormula Then
Zelle.ClearContents
End If
Next Zelle
End Sub
Gruß Gerd
Anzeige
AW: .. ist eine Katastrophe --- Stimmt!
03.09.2021 09:05:49
Ralf
Guten Morgen Gerd,
danke erstmal für deinen Code. habe das mal ausprobiert jedoch kommt folgende Meldung
" LetzeSpalte = sh.UsedRange.SpecialCells(xlCellTypeLastCell).Column " (gelb unterlegt)
Gruß Ralf
lieber spät ,als nie
03.09.2021 17:48:24
ralf_b
wenn du die Alternative nutzen möchtest, dann wäre es besser die beiden Zeilen zu tauschen. lRrow muß erst gefüllt werden bevor es dann im Zeileeinfügen benutzt werden kann. Habe ich übersehen weil nicht wirklich getestet.

Call Zeileeinfügen(lRow, sh)
lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row

AW: lieber spät ,als nie
03.09.2021 18:29:18
Ralf
Habe es gemacht wie geschrieben
"
lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row
Call Zeileeinfügen(lRow, sh)
With Sheets("Eingabe")
sh.Cells(lRow, "E").Value = .Range("D2").Value"
Kommt immer noch die Fehlermeldung
" sh.Cells(lRow + 1, 1).Insert Shift:=xlDown " ( gelb unterlegt )
Gruß
Ralf
Anzeige
wundert mich nicht
03.09.2021 19:37:39
ralf_b
wenn du diese Zeilen aktivierst(Hochkomma weg)

lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row
Call Zeileeinfügen(lRow, sh)
, dann die Anderen beiden aber deaktivieren, (Hochkomma davor)
AW: wundert mich nicht
03.09.2021 19:46:55
Ralf
Habe ich getan
Aktuell nach deiner Vorgabe jetzt
" Sub Eingabe()
'
' Eingabe Makro
'
Dim lRow As Long
Dim sh As Worksheet
Set sh = Worksheets("Datenbank")
' lRow = 4 'Festlegung der Einfügezeile
' sh.Rows(lRow).Insert Shift:=xlDown
'Alternative mit Löschung der Werte aus der Quellzeile aber Beibehaltung der Formeln
lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row
Call Zeileeinfügen(lRow, sh)
With Sheets("Eingabe")
sh.Cells(lRow, "E").Value = .Range("D2").Value
sh.Cells(lRow, "F").Valu "
und trotzdem bleibt die Fehlermeldung bestehen
https://www.herber.de/bbs/user/147899.xlsm
Gruß
Ralf
Anzeige
AW: wundert mich nicht
03.09.2021 20:10:46
ralf_b
ok,
zwei sachen
1. bei mir(aktuelle Beispieldatei) gibt es keine Fehler. Allerdings habe ich auch nur ein paar Zellen testhalber gefüllt und die neue Zeile wird bei Zeile 28 eingefügt. Dazwischen sind dann leere Datensätze. Abhilfe: Löschen aller Zeilen mit Formeln in Spalten A-C wo keine Daten drin stehen.
2. nach call zeileeinfügen sollte lrow um 1 erhöht werden. Dann wird, zumindest bei mir, die Zeile richtig angelegt. Probieren geht über studieren.

Call Zeileeinfügen(lRow, sh)
lRow = lRow + 1
Wo der Fehler herkommt kann ich deshalb nicht nachvollziehen.
Anzeige
AW: klappt immer noch nicht
04.09.2021 07:53:46
Ralf
ich habe alle Varianten probiert
aber es kommt immer wieder eine Fehlermeldung
bis zu dem das das Programm blockiert
Gruß
Ralf
AW: klappt doch
04.09.2021 10:15:21
Ralf
Guten morgen Gerd,
kannst du mir bitte die Beispiels-Datei zusenden, vielleicht hat sich hier bei mir irgendwo ein fehler eingeschlichen
Gruß
Ralf
ähhh?
04.09.2021 10:32:08
Oberschlumpf
Ralf,
Gerd hat seine - funktionierende - Bsp-Datei doch in seiner Antwort per Upload zur Verfügung gestellt - DU müsstest diese nur noch downloaden....was genau habe ICH jetzt nich verstanden?!
AW: klappt doch
04.09.2021 10:48:04
GerdL
Markiere den Link zur Datei in meinem Beitrag, Ralf. Dann die rechte Mouse-Taste klicken.
Je nach Browser, kannst du den Link dann kopieren oder die Datei öffnen.
Gruß Gerd
AW: klappt doch
04.09.2021 11:03:17
Ralf
Hallo Gerd,
ich habe mir die Datei runtergezogen, und zum heulen, geht nicht ich bekomme nee Krise. hast du Anydesk
Gruß
Ralf
AW: klappt doch
04.09.2021 11:31:44
GerdL
Nein, geht denn bei dir x-beliebiger Code in einer x-beliebigen anderen Excel-Datei?
AW: klappt doch
04.09.2021 12:04:43
Ralf
Du Glaubst es nicht
in der richtigen Arbeitsdatei funktioniert es jetzt
YIPPI
Danke vielmals für alles.
Gruß Ralf
AW: Klappe zu!
04.09.2021 12:19:46
GerdL
Hosaia Kosaimas!
Ich gebe davon mal 90 % an deinen Namensvetter weiter !
Gruß Gerd
YUPPI, Es klappt Danke alle zusammen
04.09.2021 12:26:10
Ralf
Es schein so zu sein das wenn ich aus eurem Server die Datei wieder runter ziehe es irgendwie Problem gibt
Habe jeztz den Code direkt in den Arbeitsordner kopiert und da klappt er.
Super danke nochmal
Schönen Wochenende
Gruß Ralf
AW: YUPPI, Es klappt Danke alle zusammen
04.09.2021 14:01:43
Ralf
Ich habe nur noch eine Frage;
Wenn ich in der Eingabe noch eine Zelle(D36) mit eine Formel anlege und im Code " sh.Cells(lRow, "A").Value = .Range("D36").Value dazu schreibe
Dann müssten das doch auch in der Datenbank unter Spalte A eingetragen werden, analog Spalte B,C,D etc.
Gruß
Ralf
Versuch gescheitert
06.09.2021 20:46:30
Ralt
Guten Abend,
ich habe mal im Code eine Zeile, wie bereits mitgeteilt eingefügt, ( sh. Cells(lRow, "A").Value = .Range("D36").Value ) hat aber nicht geklappt, In D36 stand 1111,
ich habe auch probiert sh. Cells(lRow "X" ....... klappte auch nicht, leider.
Gruß
Ralf
AW: Versuch gescheitert
06.09.2021 21:00:33
ralf_b
läuft bei mir astrein.
warum willst du denn deine Formeln in Spalte A überschreiben?
Steht tatsächlich hinter sh. ein Leerzeichen?

sh. Cells(lRow, "A").Value = .Range("D36").Value

AW: Versuch gescheitert
07.09.2021 12:33:39
Ralf
Guten Tag,
ersten. war mein Fehler mit dem Leerzeichen , Sorry.
zweitens mit dem Einfügen des neuen Kunden werden die Formeln die in der Datenbank sind nicht in die neue Zeile übernommen. Ist bei m ir alles blank.
Darum die Überlegung die Formeln in oder Eingabe zu hinterlegen und ebenfalls zu kopieren, aber das klappt auch nicht so wie ich gedacht habe. grrrrrr
und eins ist mit Heute aufgefallen, meine nächste freie Zeile ist z.Zt. 4214. Nun ist es So wie auch Heute das ich Kunden endgültig lösche.
Dann passiert folgendes wenn ich einen Neukunden anlege, habe ich erstmals eine Leerzeile zu stehen und dann kommt die Neueingabe.
lRow = 4214 müsste eigentlich so sein max. Kundennummer +1
Gruß
Ralf
AW: Versuch gescheitert
07.09.2021 19:58:35
ralf_b
welche Codevariante benutzt du denn aktuell?
die Variante mit call zeileeinfügen. Kopiert die letzte Zeile und löscht nur Werte, keine Formeln.
AW: Versuch gescheitert
07.09.2021 21:30:45
Ralf

Sub Eingabe()
' Eingabe Makro
Dim lRow As Long
Dim sh As Worksheet
Set sh = Worksheets("Datenbank")
lRow = 4213   'Festlegung der Einfügezeile
sh.Rows(lRow).Insert Shift:=xlDown
'Alternative mit Löschung der Werte aus der Quellzeile aber Beibehaltung der Formeln
'Call Zeileeinfügen(lRow, sh)
'lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row
With Sheets("Eingabe")
sh.Cells(lRow, "E").Value = .Range("D2").Value
sh.Cells(lRow, "F").Value = .Range("D4").Value
sh.Cells(lRow, "AL").Value = .Range("D6").Value
sh.Cells(lRow, "G").Value = .Range("D8").Value
sh.Cells(lRow, "P").Value = .Range("D10").Value
sh.Cells(lRow, "Q").Value = .Range("D12").Value
sh.Cells(lRow, "R").Value = .Range("D14").Value
sh.Cells(lRow, "S").Value = .Range("D16").Value
sh.Cells(lRow, "T").Value = .Range("D18").Value
sh.Cells(lRow, "U").Value = .Range("D20").Value
sh.Cells(lRow, "V").Value = .Range("D22").Value
sh.Cells(lRow, "W").Value = .Range("D24").Value
sh.Cells(lRow, "Z").Value = .Range("D26").Value
sh.Cells(lRow, "AA").Value = .Range("D28").Value
sh.Cells(lRow, "AJ").Value = .Range("D30").Value
sh.Cells(lRow, "AC").Value = .Range("H2").Value
sh.Cells(lRow, "AD").Value = .Range("H4").Value
sh.Cells(lRow, "AE").Value = .Range("H6").Value
sh.Cells(lRow, "AF").Value = .Range("H8").Value
sh.Cells(lRow, "AG").Value = .Range("H10").Value
sh.Cells(lRow, "AH").Value = .Range("H12").Value
sh.Cells(lRow, "AK").Value = .Range("H14").Value
End With
End Sub

Sub Zeileeinfügen(lRow As Long, sh As Worksheet)
' Angegebene Zeile kopieren, unterhalb Zeile einfügen und Inhalte in Zellen ohne Formel löschen
Dim Zelle As Range
Dim LetzeSpalte As Long
LetzeSpalte = sh.UsedRange.SpecialCells(xlCellTypeLastCell).Column
sh.Rows(lRow).EntireRow.Copy
sh.Cells(lRow + 1, 1).Insert Shift:=xlDown
For Each Zelle In sh.Range(sh.Cells(lRow + 1, 1), sh.Cells(lRow + 1, LetzeSpalte))
If Not Zelle.HasFormula Then
Zelle.ClearContents
End If
Next Zelle
End Sub

AW: Versuch gescheitert
07.09.2021 21:54:59
ralf_b
Echt jetzt?
wofür waren denn die zig Beiträge vorher gut wenn du es nicht schnallst.
hier wird nur eine Zeile eingefügt. Keine Kopie. Somit wird Excel dir den Gefallen nicht tun und noch Formeln irgendwoher holen.
die beiden Zeilen auskommentieren. Hochkomma davor oder löschen.

lRow = 4213   'Festlegung der Einfügezeile
sh.Rows(lRow).Insert Shift:=xlDown
du solltest doch die beiden Zeilen tauschen. Und die Hochkomma weg. Also so.

lRow = sh.Cells(sh.Rows.Count, "D").End(xlUp).Row
Call Zeileeinfügen(lRow, sh)
lRow = lRow +1
Wo ist denn D36 in deinem "aktuellen Code"?
AW: Versuch gescheitert
08.09.2021 08:15:24
Ralf
Guten morgen Ralf,
Sorry aber das habe ich auch gemacht hat aber nicht geklappt bei mir.
Gerne kannst du, wenn du willst dich bei mir im PC einloggen wenn du mir nicht glaubst.
Gruß
Ralf
AW: Versuch gescheitert
08.09.2021 20:12:31
ralf_b
Mit Glauben hat das nichts zu tun. Eher mit Sehen. Ich wollte sehen was du laut den bisherigen Aussagen aktuell als Code nutzt. Was du zeigst entspricht aber nicht dem. Wo soll man denn da ansetzen?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige