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

Spalteneintrag verschieben

Spalteneintrag verschieben
Saxinger
Schönen Guten Morgen zusammen!
Hat jemand eine Lösung für folgendes Problem?
Ich möchte immer in der selben Zelle zB.: A1 einen Wert eingeben.
Nach einer Eingabe soll sich der gerade eingegebene Wert automatisch nach A2 verschieben
und die Zelle A1 wieder frei sein für eine weitere Eingabe.
Und immer so weiter bis irgenwann 37 Werte in einer Spalte eingetragen sind danach sollte es in Spalte B1 weitergehen. Wie eine verkehrte Schlange halt die immer länger wird.
Danke
Saxinger
AW: Spalteneintrag verschieben
04.02.2010 11:43:19
Ramses
Hallo
Das ist nur seehr aufwändig mit einer VBA-Programmierung zu erledigen.
Daher stellt sich dem Sinn nach einer solchen Aktion.
Gruss Rainer
AW: Spalteneintrag verschieben
04.02.2010 11:50:08
Saxinger
Hallo
Danke für deine rasche Antwort. Da ich ja in Sachen VBA ein völliges Lulu bin weiß ich natürlich nicht welcher Aufwand das ist. Ich dachte halt es geht recht einfach so einen Code zu schreiben wenn sich jemand gut auskennt. Wäre es einfacher wenn es keinen Spaltenwechsel gäbe sonder sich die Wert einfach nur nacheinander nach unten anfügen?
gruß Saxinger
PS brauche das für Statistikauswertung im Roulette
danke
Anzeige
AW: Spalteneintrag verschieben
04.02.2010 12:05:09
Ramses
Hallo
"...Wäre es einfacher wenn es keinen Spaltenwechsel gäbe sonder sich die Wert einfach nur nacheinander nach unten anfügen?.."
Das wäre wesentlich einfacher.
Rechte Maustaste auf den Tabellenamen im Register
Code anzeigen
dort den Code reinkopieren
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(0, 0) <> "A1" Then Exit Sub
    Application.EnableEvents = False
    Range("A2").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("A2").Value = Range("A1")
    With Target
        .Clear
        .Select
    End With
    Application.EnableEvents = True
End Sub

Gruss Rainer
Anzeige
AW: Spalteneintrag verschieben
04.02.2010 12:11:33
Saxinger
Vielen Dank es funktioniert super!
Aha und den Sprung in eine andere Spalte (spalte B ) wäre um ein Eck komplizierter.
Na wenn es dich juckt dann würde ich mich freuen ansonsten danke vorerst.
peter
AW: Spalteneintrag verschieben
04.02.2010 12:14:37
Ramses
Hallo
Ich denke nicht dass sich jemand die Mühe macht.
Es müssen bei jeder Eingabe alle Einträge auf die Position überprüft und jeweils korrekt nach unten bzw. in eine neue Spalte verschoben werden.
Der prüfungsaufwand ist einfach zu gross, wenn man nicht weiss wieviele Positionen eingeben werden
Gruss Rainer
AW: Spalteneintrag verschieben
04.02.2010 12:18:08
Saxinger
Alles klar! Kennst du dich beim Roulette ein wenig aus. Konkret meine ich die Permanenzen , daß sind die bereits erschienen Zahlen die untereinander aufgelistet werden. Was ist das für ein Programm? Die schreiben ja die Permanenzen 24 stunden mit.
gruß
peter
Anzeige
Sorry,... von Roulette keine Ahnung o.w.T.
04.02.2010 12:23:47
Roulette
...
Auch nicht von russischem ? ;-D (owT)
04.02.2010 12:41:29
russischem

AW: Auch nicht von russischem ? ;-D (owT)
04.02.2010 12:43:09
russischem
was heisst denn owt
o = ohne, w = weiteren, T = Text...
04.02.2010 12:44:46
Ramses
Hallo
und damit ist gemeint, dass HIER kein weiterer Text mehr steht
Gruss Rainer
Ich spielte immer die Risikovariante...
04.02.2010 12:46:02
Ramses
Hallo Renee
mit 6 Kugeln im Revolver.
Zum Glück war ich nie der Erste und hab daher immer gewonnen :-)
Gruss Rainer
AW: Ich spielte immer die Risikovariante...
04.02.2010 13:05:30
Saxinger
Alles klar! Hab was für dich gefunden, ramses!!!
Nur ganz funzt es nicht. Es soll auf A1 wieder zurückspringen. Und was ist an dieser formel jetzt soviel aufwand?
gruß saxo
Private Sub Worksheet_Change(ByVal Target As Excel.Range) Dim lngSpalte As Long If Target.Address = "$A$1" Then lngSpalte = IIf(Range("A37") = "", 0, Cells(37, Columns.Count).End(xlToLeft).Column) Application.EnableEvents = False Target.Offset(1, lngSpalte).Insert Target.Offset(1, lngSpalte).Value = Target.Value Target.Clear Application.EnableEvents = True End If End Sub
Anzeige
Das funktioniert doch nicht....
04.02.2010 13:30:24
Ramses
Hallo
Dass du das einfach "gefunden" hast, glaube ich dir nicht und Crossposting stinkt mir sehr.
Ausserdem funktioniert das hinten und vorne nicht, weil die Daten nicht wie von Dir gefordert "durchgeschoben" (A2 nach A3, A3 nach A4 usw.) werden, sondern immer ein eine neue Spalte angehängt werden.
Die ersten Eingabedaten werden fortlaufend von A2 - A37 eingegeben mit "verschieben" des ersten Wertes von A2 nach A3, aber dann wird eben nicht in A2 neu eingeben und der Rest nach spalte B geschoben, sondern einfach in B2 weitergeschrieben.
Das deckt sich nicht im geringsten mit deinen Anforderungen und die Auswertung deiner Permanzenen fällt auf die Schnauze.
Gruss Rainer
Anzeige
AW: Das funktioniert doch nicht....
04.02.2010 14:01:04
Saxinger
du hast recht es funktioniert nicht. Was genau stinkt dir sehr?
Das ich mir informationen aus der Welt der Programmierprofis hole weil ich leider keiner bin.
Sorry wenn ich dich beleidigt hab, aber ich bin von Profis wie du einer bist abhängig und wenn du es aber nicht machen willst musst es mir sagen. Sorry
Lieben gruß
AW: Das funktioniert doch nicht....
04.02.2010 14:18:46
Ramses
Hallo
"... Was genau stinkt dir sehr?..."
Weil mit der Fragestellung in mehreren Foren unsinnig viele Leute mit dem gleichen Problem belastet werden.
Wenn du für jede Fragestellung zahlen müsstest würdest du das ja auch nicht machen,... oder ?
Crossposting ist in keinem Forum gern gesehen.
Faustregel:
Wenn du auf eine Frage nach ca. 6 Stunden keine Antwort erhältst, ist keiner sauer.
Aber wenn du woanders eine Antwort erhältst, dann solltest du so ehrlich sein und die Quelle auch mitteilen.
"...aber ich bin von Profis wie du einer bist abhängig..."
Ich erhalte aber kein Geld dafür sondern mache das in meiner spärlichen Freizeit. Wenn du also "Profis" in mehreren Foren mit deiner Frage "beschäftigst", dann stinkt mir das, und den anderen auch, weil ich/wir diese Zeit woanders einsetzen hätte können. Ich mache mir mit deiner Frage Gedanken und versuche eine Problemlösung zu erarbeiten welche deine Anforderungen berücksichtigt, aber zum Ergebnis komme, das dies mit einem vernünftigen Zeit- und Nutzenaufwand nicht zu realisieren ist.
Dann stinkt es mir, wenn du "zufällig" eine Formel "findest" die noch nicht mal funktioniert, aber dann gefragt wird: "Was ist daran nun so kompliziert" .
Die Suche nach Problemlösungen beschränken sich daher auf max. 15 Min. meiner Zeit.
Ist der Aufwand grösser, muss schon ein spezieller Anreiz da sein:
Entweder ein ausgefallenes Problem, wo mich die Lösung als solches interessiert und ich dies evtl. woanders wieder verwenden kann, oder Bezahlung.
Denn Antworter hier machen das hier für Gotteslohn, in vielen Fällen noch nicht mal dafür,.... und die Fragesteller verdienen damit ihr Geld weil die firmeneigene IT-Abteilung damit nicht belastet wird, oder eine enorme Zeitersparnis eintritt.
Gruss Rainer
Anzeige
AW: Das funktioniert doch nicht....
04.02.2010 14:27:51
Saxinger
Ok Verstanden lieber Rainer!
Ich bedanke mich trotzdem für deine Mühen und wollte dich in keinsterweise beleidigen.
Vielleicht ist der Reiz da , wenn nicht kann man nix machen und dann wünsche ich dir noch einen schönen Tag
gruß
peter
AW: Spalteneintrag verschieben
04.02.2010 16:37:44
Renee
Hi,
Was ist eine verkehrte Schlange ?
Vielleicht sowas ? Aber Achtung: In der Zeile unter der cMaxColLen wird alles überschrieben und was mehr als die Anzahl Spalten des Blatts braucht wird entsorgt!
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Const cMaxColLen = 37        ' Max Column Length
Dim lngCol As Long
Dim lngRow As Long
If Target.Address  "$A$1" Then Exit Sub
Application.EnableEvents = False
Range(Cells(1, 1), Cells(cMaxColLen, Columns.Count - 1)).Cut Cells(2, 1)
Range(Cells(cMaxColLen + 1, 1), Cells(cMaxColLen + 1, Columns.Count - 1)).Cut Cells(1, 2)
Rows(cMaxColLen + 1).ClearContents
Cells(1, 1).Activate
Application.EnableEvents = True
End Sub
GreetZ Renée
Anzeige
AW: Spalteneintrag verschieben
04.02.2010 16:42:52
Saxinger
Verkehrte Schlange ist ein blöder Ausdruck ich weiß aber du hast dieses Problem zu 100% gelöst. Vielen Dank Renee
gruß
vielleicht zu 102% und was zuviel ist...
04.02.2010 16:54:24
Renee
ist zuviel:
Private Sub Worksheet_Change(ByVal Target As Range)
Const cMaxColLen = 37        ' Max Column Length
Dim lngCol As Long
If Target.Address  "$A$1" Then Exit Sub
Application.EnableEvents = False
Range(Cells(1, 1), Cells(cMaxColLen, Columns.Count - 1)).Cut Cells(2, 1)
Range(Cells(cMaxColLen + 1, 1), Cells(cMaxColLen + 1, Columns.Count - 1)).Cut Cells(1, 2)
Rows(cMaxColLen + 1).ClearContents
Cells(1, 1).Activate
Application.EnableEvents = True
End Sub
genügt.
GreetZ Renée
Anzeige
Chapeau...
04.02.2010 16:57:34
Ramses
Hallo Renee
Der Trick mit dem Zeilen einfügen und unten abschneiden ist genial.
Das löst natürlich all Prüf- und Versatzprobleme auf einmal
Gruss Rainer
AW: Spalteneintrag verschieben
04.02.2010 16:47:35
Ramses
Hallo Renee
Im Prinzip soll das so aussehen
Tabelle2

 ABCDEFGHIJKL
1Eingabe  Eingabe Neu 1Spalte 2 Eingabe Neu 2Spalte 2 Eingabe 37Spalte 2Spalte 3
2das  Neu 1Ende Neu 2das Neu 36dasund
3ist  das  Neu 1Ende Neu 35istdas
4der  ist  das  Neu 34derEnde
5Anfang  der  ist  Neu 33Anfang 
61  Anfang  der  Neu 321 
72  1  Anfang  Neu 312 
83  2  1  Neu 303 
94  3  2  Neu 294 
105  4  3  Neu 285 
116  5  4  Neu 276 
127  6  5  Neu 267 
138  7  6  Neu 258 
149  8  7  Neu 249 
1510  9  8  Neu 2310 
1611  10  9  Neu 2211 
1712  11  10  Neu 2112 
1813  12  11  Neu 2013 
1914  13  12  Neu 1914 
2015  14  13  Neu 1815 
2116  15  14  Neu 1716 
2217  16  15  Neu 1617 
2318  17  16  Neu 1518 
2419  18  17  Neu 1419 
2520  19  18  Neu 1320 
2621  20  19  Neu 1221 
2722  21  20  Neu 1122 
2823  22  21  Neu 1023 
2924  23  22  Neu 924 
3025  24  23  Neu 825 
3126  25  24  Neu 726 
3227  26  25  Neu 627 
3328  27  26  Neu 528 
3429  28  27  Neu 429 
35und  29  28  Neu 330 
36das  und  29  Neu 231 
37ende  das  und  Neu 132 


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruss Rainer
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige