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
352to356
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
352to356
352to356
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zelle a120 steht 2.123 in Zelle a121 soll 2.124

Zelle a120 steht 2.123 in Zelle a121 soll 2.124
25.12.2003 18:35:37
Walter
Hallo nochmal,
habe nur eine kleinigkeit.
Komme im moment nicht drauf.
Ich setzte die aktive zelle (alles per VB Makro) in a120 dort steht eine Ziffer z.b. 2.123 ich gehe dann weiter, das funktioniert auch, in zelle a121 dort soll
2.124 also immer nur plus eins.
Kann mir noch jemand einen tip geben.
Gruss walter

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle a120 steht 2.123 in Zelle a121 soll 2.124
25.12.2003 18:38:53
PeterW
Hallo Walter,

wie gehst du denn zu A120? Ohne Select und ActiveCell würde das so gehen:

Cells(121, 1) = Cells(120, 1) + 1

Gruß
Peter
AW: Zelle a120 steht 2.123 in Zelle a121 soll 2.124
25.12.2003 18:46:30
Walter
Hallo peter,
habe mich wohl blöd ausdrückt.
Die aktive zelle ist a121, dann soll automatisch der wert der zelle von a120
genommen werden und dazu plus 1 gezählt werden.
Gruss walter
AW: Zelle a120 steht 2.123 in Zelle a121 soll 2.124
25.12.2003 18:53:46
PeterW
Hallo Walter,

du willst bei VBA gut doch wohl nicht ernsthaft mit ActiveCell und Offset coden?

ActiveCell.Offset(1, 0) = ActiveCell + 1

Für weitere Hilfe wäre der relevante Teil des Codes und eine genaue Aufgabenbeschreibung (bis zu welcher Zelle soll erhöht werden) hilfreich.

Gruß
Peter
Anzeige
zur Übersicht mein Makro
25.12.2003 18:50:25
Walter
Hallo Peter,
zur Übersicht mein Makro, welches noch nicht ganz fertig ist.
Private Sub CommandButton2_Click()
Application.ScreenUpdating = False
'Sub A_Neuen_Namen_eingeben()
Dim einf 'für einf= Einfügen Zeile
Dim zz
ActiveSheet.Unprotect ("ww") 'schutz aufheben

'------------ hier wird erst die letzte Zeile ausgewählt ---------------------
zz = 1
Do While Cells(zz, 1) <> "" ' Start der Schleife 1=Spalte A
zz = zz + 1 ' Schleifenzähler um 1 erhöhen
Loop ' Wendepunkt für Schleife
Cells(zz, 1).Select ' Zelle selektieren 1=in Spalte A anfang
Cells(zz - 1, 1).Select ' 1 Zeile nach oben
'-------------- ab hier wird makiert ------------------------------------------
einf = ActiveCell().Row
'AktivesBlatt.Bereich(ZelleListe(1; 1); ZelleListe(z; 16)).Auswählen
'ermittelt über z die aktive Zeile,
'die aktive Zelle, geht in die Spalte 2, dann makiert von Spalte 2-17
ActiveSheet.Range(Cells(einf, 2), Cells(einf, 18)).Select
Selection.Copy
Cells(zz, 2).Select ' in Spalte "B" nächste Zeile setzen
ActiveSheet.Paste ' kopierte Zeile einfügen
Application.CutCopyMode = False ' makierung aufheben
Cells(zz, 2).Select ' Spalte, Zelle Firmennamen gehen
Selection.ClearContents ' Firmennamen löschen
Cells(zz, 3).Select ' zu Briefkopf-Anrede gehen
Selection.ClearContents ' Briefkopf-Anrede löschen
Cells(zz, 4).Select ' zu Briefkopf-Titel gehen
Selection.ClearContents ' Briefkopf-Titel löschen
Cells(zz, 5).Select ' zu Briefkopf-Vornamen gehen
Selection.ClearContents ' Briefkopf-Vornamen löschen
Cells(zz, 6).Select ' zu Briefkopf-Namen gehen
Selection.ClearContents ' Briefkopf-Namen löschen
Cells(zz, 7).Select ' zu Geburts-Datum gehen
Selection.ClearContents ' Geburts-Datum löschen
Cells(zz, 8).Select ' zu Alter gehen
Selection.ClearContents ' Alter löschen
Cells(zz, 10).Select ' ANREDE überspringen zu Typ gehen
Selection.ClearContents ' Typ löschen
Cells(zz, 11).Select ' zu Erstzulassung gehen
Selection.ClearContents ' Erstzulassung löschen
Cells(zz, 12).Select ' zu Zweitzulassung gehen
Selection.ClearContents ' Zweitzulassung löschen
Cells(zz, 13).Select ' zu PLZ gehen
Selection.ClearContents ' PLZ löschen
Cells(zz, 14).Select ' zu Ort gehen
Selection.ClearContents ' Ort löschen
Cells(zz, 15).Select ' zu Stasse gehen
Selection.ClearContents ' Strasse löschen
Cells(zz, 16).Select ' zu Nr. gehen
Selection.ClearContents ' Nr. löschen
Cells(zz, 17).Select ' zu Verkäufer gehen
Selection.ClearContents ' Verkäufer löschen
Cells(zz, 18).Select ' zu MBVS Nr gehen
Selection.ClearContents ' MBVS Nr löschen

Cells(zz, 1).Select ' Spalte "A" gehen

'jetzt sollte aus der spalte A darüber der Wert genommen werden
' und in der aktiven zelle gesetzt werden.

Gruss Walter

Anzeige
AW: zur Übersicht mein Makro
25.12.2003 18:55:17
PeterW
Hallo Walter,

das seh ich mir erst nach dem Abendessen genauer an. :-)

Gruß
Peter
AW: zur Übersicht mein Makro
25.12.2003 19:33:38
MikeS
Hallo Walter,

ich muß meinem "Vorredner" zustimmen, denn wenn Du VBA-gut angibst
und mit Select arbeitest...

Desweiteren solltest Du am Anfang immer die Bildschirmaktualisierung
ausschalten. Deine Augen und die Rechenleistung werden es Dir danken.

Habe nur kurz ein paar Beispiele angefügt, die Du anpassen müßtest.

Nun muß ich Essen, sonst schimpft Mama!!!

Option Explicit

Sub Test()
Dim l&, l2&
'Bildschirmaktualisierung aus
Application.ScreenUpdating = False
'letzte nichtleere Zelle in Spalte A
l = [A65536].End(xlUp).Row
'letzte leere Zelle in Spalte A
l2 = [A65536].End(xlUp).Row + 1
'zusammenhängenden Bereich löschen
Range(Cells(l, 2), Cells(l, 18)).ClearContents
'Bildschirmaktualisierung ein
Application.ScreenUpdating = True
End Sub


Ciao MikeS
Anzeige
AW: zur Übersicht mein Makro
25.12.2003 20:07:33
Walter
Hallo Mike,
zu meiner Entschuldigung, ich bin so olaola gut.
Ich hoffe Du hast gut gegessen.
Herzlichen Dank für Deine Info, ich kann nicht durchgängig die kompl.Zeile löschen da
ich in Spalte 9 eine Wenn Funktion habe.
Ich hoffe noch auf eine Lösung in Sachen letzte Zelle ( in A) plus den Wert (an Zahl)
aus der vorletzten Zelle, wie beschrieben.
Gruss Walter
AW: zur Übersicht mein Makro
25.12.2003 20:23:25
PeterW
Hallo Walter,

das Ganze mal von Select bereinigt könnte so aussehen. Wenn die Lösung nicht passt formuliere bitte die Aufgabenstellung in Klartext.

Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim zz As Long
ActiveSheet.Unprotect ("ww") 'schutz aufheben
zz = Range("A65536").End(xlUp).Row + 1
Range(Cells(zz - 1, 2), Cells(zz - 1, 18)).Copy Cells(zz, 2)
Range(Cells(zz - 1, 2), Cells(zz - 1, 8)).ClearContents
Range(Cells(zz - 1, 9), Cells(zz - 1, 18)).ClearContents
Cells(zz, 1) = Cells(zz - 1, 1) + 1
'soll der Schutz wieder gesetzt werden??
Application.ScreenUpdating = True
End Sub

Gruß
Peter
Anzeige
Bin auch etwas Stolz !
25.12.2003 21:16:20
Walter
Hallo Peter,
hatte auch etwas gefummelt und bin Stolz das es funktioniert.
Hier mein Makro:

Private Sub CommandButton2_Click()
Application.ScreenUpdating = False
'Sub A_Neuen_Namen_eingeben()
Dim z
Dim aktivesblatt
ActiveSheet.Unprotect ("ww")                                 'schutz aufheben
z = Range("a1").End(xlDown).Row
ActiveSheet.Range(Cells(z, 1), Cells(z, 18)).Select
Selection.Copy
ActiveSheet.Range(Cells(z + 1, 1), Cells(z + 1, 18)).Select
ActiveSheet.Paste                                   ' kopierte Zeile einfügen
Application.CutCopyMode = False                     ' makierung aufheben
Selection.ClearContents                             ' kompl. Zeile  löschen
ActiveSheet.Range(Cells(z, 9), Cells(z, 9)).Select  ' zur Anrede gehen
Selection.Copy
ActiveSheet.Range(Cells(z + 1, 9), Cells(z + 1, 9)).Select 'nach oben
ActiveSheet.Paste                                   ' kopierte Zeile einfügen
Application.CutCopyMode = False                     ' makierung aufheben
ActiveSheet.Range(Cells(z + 1, 1), Cells(z + 1, 1)).Select
Hier ist jetzt die aktive Zelle, z.b. A 2178
Nun soll die Nr. von A 2177 (ist 2175)+1 gezählt werden so das in der aktiven Zelle
dann 2.176 steht !!!
Application.ScreenUpdating = True
End Sub


Gruss Walter
Anzeige
AW: Bin auch etwas Stolz !
25.12.2003 21:46:39
Walter
Hallo Peter,
natürlich bist Du der bessere, den dein Makro funktioniert
und zählt !!!
Herzlichen Dank nochmal !
Aber wieso zählt bei meinem Makro nicht ?
Bin wie gesagt doch nicht so gut !!!
Gruss Walter
AW: Bin auch etwas Stolz !
25.12.2003 21:55:43
PeterW
Hallo Werner,

deine letzte Zeile:
ActiveSheet.Range(Cells(z + 1, 1), Cells(z + 1, 1)).Select
müsste heißen:
Cells(z + 1, 1) = Cells(z, 1) + 1

Wenn sich der gesamte Code im aktuellen Blatt abspielt ist neben Select auch ActiveSheet überflüssig.

Gruß
Peter
PS: auch ich hab (wie wohl viele andere) mit dem Makro Rekorder angefangen - ich verweise dich nochmal auf den oben angegebenen Link, dann wirst du den Rekorder Code schnell anpassen/verbessern können :-)
Anzeige
AW: Bin auch etwas Stolz !
25.12.2003 23:05:35
Walter
Hallo Peter,
ich glaube, ich hatte heute es Glück das ich mit Dir Kontakt hatte.
Du hast es ja gut gemeint!!!
Herzlichsten Dank nochmal und ein
gesundes Neues JAhr!!
Gruss Walter

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige