Zellinhalt mit Nachbarzelle tauschen
#1
Hallo,

möchte ich die Inhalte zweier Spalten z.B.  der Spalten  B und C vertauschen kann ich dies folgendermaßen erledigen:


Code:
Columns("B:B").Cut: Columns("D:D").Insert xlToRight


Statt ganze Spalten zu tauschen, möchte ich jetzt so etwas für nur eine Zelle aus der Spalte B mit ihrer Nachbarzelle aus der Spalte C machen.

Bisher habe ich nur so etwas (Tausch der Zelle B3 mit C3):

Selection.Cut
Range("D3").Select
Selection.Insert Shift:=xlToRight

Wie kann ich den Code vereinfachen und verallgemeinern, dass alles in einer Codezeile steht?
Top
#2
Hallo,

von der Idee her 2 temp Var bilden
ur_b= Cells(i,2) bzw. ur_c= Cells(i,3)
Cells(i,2=ur_c) bzw. Cells(i,3=ur_b)
Das ganze kannst du in eine Schleife packen vor i = 1 to zeile_end und diese noch verschachteln for j=2 to 3
[-] Folgende(r) 1 Nutzer sagt Danke an Schachspieler für diesen Beitrag:
  • Eisbär
Top
#3
Habe mich wohl etwas im Kreis gedreht.

Ich glaub das ist der kürzeste Weg einen Zellinhalt aus der Spalte B mit seiner Nachbarzelle aus der Spalte C zu tauschen:

Code:
Range("B" & ActiveCell.Row).Cut: Range("B" & ActiveCell.Row).Offset(0, 2).Insert Shift:=xlToRight


Falls es jemand kürzer hinbekommt: Bitte posten!
Top
#4
Halöchen,

nicht viel, aber
Code:
With Range("B" & ActiveCell.Row): .Cut: .Offset(0, 2).Insert Shift:=xlToRight: End With
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste