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

Komme mit aufgezeichnetem Makro nicht weiter

Komme mit aufgezeichnetem Makro nicht weiter
05.10.2014 20:22:55
Christian

Hallo an alle,
habe am Ende stehendes Makro aufgezeichnet.
Könnt ihr mir bitte helfen, es anzupassen.
1. Statt Zeile 260 die letzte Zeile mit Inhalt in Spalte D.
2. Statt Zeile 261 alle nachfolgenden Zeilen mit Inhalt.
3. Statt A1:J261 die Spalten B und F und auch nur in den Zeilen, aus Punkt 2. (Wenn das zu kompliziert ist, geht auch alle Zellen mit Inhalt).
Kurzum es geht mir darum, wenn ich zu den zur Zeit 261 Zeilen welche hinzufüge, das Makro die Formeln aus Zeile 261 in die neuen Zeilen übernimmt, sodass dieses Makro immer wieder ausführbar ist, egal wieviele Zeilen bereits die Formeln beinhalten oder wieviele seit dem letzten Ausführen hinzugekommen sind (also die Formeln noch fehlen)
Die Texte, die ich in die Spalten B und F einfüge, werden in Calibri 24, Fett eingefügt, das heißt, das Makro müsste sich gar nicht die Mühe machen den kompletten Bereich, z.Z. A1:J251 in Calibri 11, nicht fett zu ändern, sondern es reicht die Spalten B und F in den seit dem letzten Ausführen neu hinzugekommenen Zeilen.
Kann mir da jemand helfen?
Vielen Dank schonmal
Christian

Sub Makro1()
' Makro1 Makro
' Tastenkombination: Strg+y
Range("A1:J261").Select
Range("H261").Activate
With Selection.Font
.Name = "Calibri"
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
With Selection.Font
.Name = "Calibri"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
Selection.Font.Bold = True
Selection.Font.Bold = False
Range("D260").Select
Selection.Copy
Range("D261").Select
ActiveSheet.Paste
Range("H260:J260").Select
Application.CutCopyMode = False
Selection.Copy
Range("H261").Select
ActiveSheet.Paste
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Rückmeldung?
06.10.2014 00:33:06
Adis
Hallo
anbei eine überarbeitete Makro Version. Ich hoffe ich habe die Aufgabe richtig verstanden,
sonst bitte Rückmeldung zum korrigieren. Zum ermitteln der letzten Zeile brauche ich eine
volle Spalte. Ich habe hier Spalte "H" genommen, s. Const zBezug. Es kann jede andere sein,
Hauptsache es gibt einen Wert in der letzten Zeile.
Über eine InputBox können bis max 10 neue Zeilen kopiert werden. Ist evtl. eine Erleichterung.
Const zBezug = "H2000"
Sub Spalten_aufCalibri_setzen()
Dim Zahl As Variant, z As Long
z = Range(zBezug).End(xlUp).Row
With Range("D1:D" & z).Font
.Name = "Calibri"
.Size = 11
.Bold = False
End With
With Range("H1:J" & z).Font
.Name = "Calibri"
.Size = 11
.Bold = False
End With
'Eingabe für max 10 Zeilen
Zahl = InputBox("Wieviele Zeilen sollen kopiert werden?   (max 10)", , 1)
If Not IsNumeric(Zahl) Then Zahl = 1 Else If Zahl > 10 Then Zahl = 10
'letzte Zeile in Spalte H ermitteln
z = Range(zBezug).End(xlUp).Row
'Zelle "D" 1 Zeile tiefer kopieren
Range("D" & z).Copy _
Range(Cells(z + 1, "D"), Cells(z + Zahl, "D"))
'Zelle "H;J" 1 Zeile tiefer kopieren
Range(Cells(z, "H"), Cells(z, "J")).Copy _
Range(Cells(z + 1, "H"), Cells(z + Zahl, "H"))
Application.CutCopyMode = False
End Sub
Gruss Adis

Anzeige
AW: Info
06.10.2014 00:56:07
Ewald
Hallo Adis,
auch wenn du hilfsbereit bist, solltest du bei solchen oder ähnlichen Formulierungen wie von Erich, keine Antwort geben.
dieser User hält es nicht für nötig auf geleistete Hilfe eine Rückmeldung zu geben, obwohl es eigentlich schon Anstand und Höflichkeit erfordert.
Das Forum soll nicht auf das Niveau "He Alter schick mal rüber" absinken
Gruß Ewald

AW: Rückmeldung?
06.10.2014 07:50:39
Christian
Hallo Erich,
ja dieser Christian bin ich. Tatsache ist, die Mail dass diese Nachricht eingegangen ist war in meinen Spams gelandet, daher ist mir jetzt erst aufgefallen, dass da noch eine Antwort kam. Ich hatte ja durch die programmierte Formel ja auch bereits eine funktionierende Lösung.
Du hast natürlich vollkommen Recht, wenn du sagst, ich solle Rückmeldung geben.
Dazu, ich würde nicht auf deine Nachricht eingehen. Was bringt es mir, großartig auf den Versuch einer Erklärung einzugehen, die für mich nicht zielführend ist, weil ich mit der Ausgabe des 1. des Monats in meinem Fall nichts anfangen kann. Ich habe dies einfach als Erklärung dessen verstanden, zu der kein weiterer Kommentar notwendig ist. Daher habe ich mich auf die Bitte beschränkt, zu überdenken, ob das Monatsende nötig ist.
Aber nichts desto trotz, könntest du mir bitte mit dem Makro helfen?
Muss jetzt allerdings erstmal zu einem wichtigen Temrin um 9, kann das Makro das vorgeschlagen wurde, erst im Anschluss testen.
Gruß
Christian

Anzeige
Bitte noch mal lesen...
06.10.2014 09:47:32
Erich G.
Hi Christian,
im Beitrag
leicht geändertes Beispiel - von Erich G. am 01.10.2014 12:01:01
ging es nicht mehr um den 1. des Monats. Es ging darum, ob der in der Zelle stehende Tag 25 (vom 25.09.1968) erhalten bleiben
oder durch den Monatsletzten überschrieben soll.
Eigentlich sollten doch nur fehlenden Daten ergänzt werden - der Tag fehlt hier aber nicht!
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

AW: Bitte noch mal lesen...
06.10.2014 11:37:58
Christian
Hallo Erich,
ich gehe davon aus, dass hier einige Missverständnisse vorlagen von dem was wir uns gegenseitig mitteilen wollten. Du wolltest mir erklären wie die Daten in Excel zustande kommen, ich hatte dich so verstanden als wäre genau das was du da schreibst eine Erklärung, weshalb das was ich mir vorstelle nicht möglich ist.
Ich habe es nochmal gerade ausprobiert, du hast natürlich recht, wenn ich den Text September 1968 in eine Zelle eingebe, macht er daraus das Datum 01.09.1968 und zeigt dies im Format MMM JJ an.
Aber gibt es dann nicht die Möglichkeit, z.B. vom Sinn her so, =DATUM(G1;G1+1;G1)-1 also beim Monat einen dazutun, damit wir in dem Fall beim 1.10. sind und davon am Schluss 1 Tag abziehen, was der 30. September wäre. Nur leider funktioniert diese Formel so nicht und gibt nur #Wert! aus. Aber zumindest etwas in der art.
Gruß
Christian
PS:

Anzeige
AW: Rückmeldung?
07.10.2014 08:54:28
Christian
Hallo Adis,
sorry komme erst jetzt dazu, das Makro zu testen, habe die Zeit die mir bei meinem Stress die Tage geblieben ist, genutzt um mich mit Erich auseinander zu setzen.
Beim Ausführen wird deine Zeile z = Range(zBezug).End(xlUp).Row gelb markiert mit der Meldung
Die Methode Range für das Objekt _Global ist fehlgeschlagen.
Gruß und danke schonmal für die Mühe
Christian

AW: Komme mit aufgezeichnetem Makro nicht weiter
07.10.2014 15:52:29
Adis
Hallo
ich möchte hier gerne am Ball bleiben. Ich mag es nicht Makros zu schreiben
die nicht einwandfrei funktionieren. Vielleicht habe ich etwas übersehen?
Das möchte ich gerne herausfinden. Frage: sind mehrere Mappen geöffnet?
Ist bei der Ausführung die gewünschte Tabelle selektiert, oder eine andere?
Bitte mal probieren ob es lauft wenn man die Tabelle vorher selektiert, s.u.
Dim Zahl As Variant, z As Long
Sheets("Tabelle1").Select
z = Range(zBezug).End(xlUp).Row
Gruss Adis

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige