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

Erste Schritte - Zeile einfügen klappt mit Problem

Erste Schritte - Zeile einfügen klappt mit Problem
25.09.2014 13:41:10
Christoph
Hallo,
ich bin neu hier. Ich arbeite nun seit ein paar Tagen mit VBA, um ein Gantt-Diagramm sinnvoll mit Funktionalitäten zu ergänzen. Ich stehe wirklich noch ganz ganz am Anfang der VBA-Programmierung (ggw. erarbeite ich die wesentlichen Grundlagen mit einem Lehrbuch) und bitte daher vorab etwaige (aus Sicht eines VBA-Profis) dümmliche Fragen zu entschuldigen.
Ich habe die entsprechende Datei hochgeladen - https://www.herber.de/bbs/user/92810.xlsm
Mit Hilfe des Buches und von Foreneinträgen habe ich den Button 'Projekt einfügen' mit einem Makro verknüpft, welches am Ende meiner Tabelle eine Zeile einfügt und die Formeln sowie Formate übernimmt.
Leider gibt es dabei zwei Probleme, die ich selber nicht lösen kann:
1.) In Spalte G ist ein DropDown-Menü hinterlegt. Leider wird dieses beim Einfügen der neuen Zeile nicht mit übernommen. Wo liegt dort der Fehler?
2.) Wird nur eine Zelle 'angehangen' und nicht eine neue eingefügt. Dies führt dazu, dass der Button mit der Zeit in der Tabelle befindlich ist und ich dessen Position immer wieder anpassen muss. Wie kann ich dieses Problem beheben?
Für jede Hilfe bin ich sehr sehr dankbar. Ich wünsche noch einen schönen und erfolgreichen Tag.
VG, Christoph

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Erste Schritte - Zeile einfügen...
25.09.2014 14:20:34
JoWE
Hallo Christoph,
sofern Du einen 'Namen' für die Daten aus der Tabelle "Drop-Down Maßnahme" gebildet hast und Du diesen 'Namen' beim Erstellen der Gültigkeit (z.B. 'zulassen Liste'; 'Quelle =Art_der_Maßnahme') für den Bereich der Spalte G festgelegt hast, sollte dies beim Anfügen der neuen Zeile funktionieren, denn das Makro kopiert ja die Vorgängerzeile incl. Gültigkeit in Spalte G und löscht nur die Konstanten. Ich habe das Makro "NeueZeile" unter diesen Bedingungen mit XL2010 getestet. Klappt ohne Fehler.
Gruß
Jochen

AW: Erste Schritte - Zeile einfügen...
25.09.2014 15:00:04
Christoph
Hallo Jochen,
vielen vielen Dank für Deine schnelle Antwort. Leider hänge ich noch etwas bei dem Problem. Ich habe den Daten einen Namen ('Maßnahmen')zugewiesen und nutze diesen für die Quelle der Gültigkeitskriterien. Das Drop-Down befindet sich in G5:G68. Wenn ich nun den Button betätige, wird das Drop-Down in der neuen Zelle leider nicht übernommen.
Überdies besteht auch noch das Problem, dass das Makro eine Zelle 'anfügt' statt eine Zelle einzufügen. Wenn ich jetzt 10 Zeilen anfüge führt dies unweigerlich dazu, dass die Schaltfläche in der Tabelle 'verschwindete'.
Ich habe die Datei nochmal hochgeladen. Ich wäre dir sehr sehr dankbar, wenn Du oder jemand anderes mir nochmals behilflich sein könnte/könnten
https://www.herber.de/bbs/user/92814.xlsm
Vielen vielen Dank im Voraus, Christoph

Anzeige
AW: Erste Schritte - Zeile einfügen...
25.09.2014 15:41:51
JoWE
Definiere desn Bereich neu: G5:G70 (weiter als der bisher genutzte Bereich)

AW: Erste Schritte - Zeile einfügen...
25.09.2014 15:48:28
Christoph
Ok, dann habe ich das Dropdown-Menü aber in allen 'leeren Zeilen' bevor ich überhaupt den Button "neue Zeile" genutzt habe. Geht es nicht auch vielleicht etwas eleganter - sodass das Dropdown erst eingefügt wird, wenn ich auch den Button betätige?
Überdies noch die Frage wie ich es hinbekomme, dass die Zeile eingefügt und nicht angefügt wird. Ich möchte nicht immer die Position der Schaltfläche und der Grafik anpassen müssen.
Danke an Euch alle und einen schönen Tag noch...

AW: Erste Schritte - Zeile einfügen...
25.09.2014 20:35:01
Adis
Hallo
zum Problem des Button verschieben, das ander muss ich mir noch ansehen.
Den Button mit rechter Maustaste anklicken: ruft -Objekt formatieren- auf
Es gibt drei mögliche Objekt Einstellungen, in Bezug auf Spalte/Zeile:
Die letzte Einstellung müsste das Button verschieben Problem beheben.
von Zellgrösse und Position abhaengig
nur von Zellposition abhaengig
von Zellposition und Grösse unabhaengig
Gruss Adis

Anzeige
AW: Erste Schritte - Zeile einfügen...
26.09.2014 02:26:27
Adis
Hallo
anbei ein geaendertes Makro mit dem man mehrere Zeilen eingefügt kann
Die Zeilen weren nach unten verschoben, durch Methode: .Insert xlDown
Ich habe dafür statt Intersect die alte Methode Range verwendet.
Würde mich freuen wenn es klappt.
Den Button beim einfügen in der Position belassen: mit Zelle verankert
Sub NeueZeile_Neu()
Dim Zeile As Long
With ActiveSheet
'Zeilennummer:
a = InputBox("Bitte Anzahl neue Zeilen eingeben  (max. 10)")
If a  10 Then a = 10
Zeile = .Cells.Find("*", , , , xlByRows, xlPrevious).Row + 1
'Kopieren:
Range(.Rows(Zeile - a), .Rows(Zeile - 1)).Copy
.Cells(Zeile, 1).Insert xlDown
Application.CutCopyMode = False
'Werte löschen
Zeile = .Cells.Find("*", , , , xlByRows, xlPrevious).Row
Range(.Rows(Zeile - a + 1), .Rows(Zeile)).SpecialCells(xlCellTypeConstants).ClearContents
End With
End Sub
Gruss Adis

Anzeige
AW: Erste Schritte - Zeile einfügen...
26.09.2014 09:06:28
Christoph
Hallo Adis,
tausend Dank für deine Hilfe. Das Ganze funktioniert einwandfrei und ich habe überdies ein perfektes Makro, anhand dessen ich meine VBA Kenntnisse erweitern kann. Es sei Dir nochmals gedankt und einen schönen Tag Dir.
VG, Christoph

AW: Erste Schritte - Zeile einfügen...
26.09.2014 19:35:36
Christoph
Hallo Adis,
entschuldige, dass ich dich nochmals behellige. Mir ist ein Problem aufgefallen. Wenn ich in der Maske auf abbrechen drücke bricht das Makro nicht ab, sondern fügt 10 Zeilen ein. Kannst du mir da behilflich sein?
Danke Danke. VG, Christoph

AW: Erste Schritte - Zeile einfügen...
27.09.2014 01:47:56
Adis
Hallo
Sorry, mein Fehler, habe ich leider übersehen. Um (Exit Sub) erweitern.
Ich habe noch ein zweites Makro, setze es auch in den anderen Thread
Die dynamische Erweiterung für die Sortier Routine, über z = Zeile
Geprüft wird die Endzeile in 2 Spalten, zur Sicherheit. Objekt + PLZ
Wegen dem Server musste ich Exit in Klammer setzen, bitte ohne () einfügen
a = InputBox("Bitte Anzahl neue Zeilen eingeben (max. 10)")
If a = Empty Then (Exit Sub) 'Ende bei Cancel
Sub ProjekteSortierenDatum_Neu()
'in Spalte Objekt + PLZ End Zeile finden
o = Range("C5").End(xlDown).Row
z = Range("D5").End(xlDown).Row
If o  z Then
If o > z Then z = o  'Warn Hinweis bei ungleichmaessigen Spalten
MsgBox "Spalte C + D nicht korrekt ausgefüll - Sortiert wird bis Zeile  " & z
End If
With ActiveSheet.Sort
.SortFields.Clear
.SortFields.Add Key:=Range("I:I"), SortOn:=xlSortOnValues, Order:=xlAscending
.SetRange Range("B4:AU" & z)   'Range dynamisch über z = Zeile
.Header = xlYes
.Apply
End With
End Sub
Gruss Adis

Anzeige
AW: Erste Schritte - Zeile einfügen...
29.09.2014 11:23:05
Christoph
Morgen Adis,
vielen vielen Dank für deine beiden Lösungen. Funktionieren beide super - you made my day. Tausend Dank nochmals und einen schönen Tag Dir.
VG, Christoph

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige