Microsoft Excel

Herbers Excel/VBA-Archiv

erste freie Spalte ....

Betrifft: erste freie Spalte .... von: Fred
Geschrieben am: 20.10.2020 12:24:31

Hallo Excel Experten,
ich habe eine Frage zum bestimmen der ersten freien Spalte (Kriterium: Zeile 10)

Ich möchte in die erste freie Zelle der ersten freien Spalte in Zeile 10, einen Wert eintragen.
Vorweg; Ich ermittel die erste freie Spalte (Zeile 10) so:

sp1 = Sheets("Spiele").Cells(1, 256).End(xlToLeft).Column + 1
Meine Frage:
Wie lautet der Code, wenn ich in sheets("Spiele").range(...sp1..) den Text "OK" eintragen möchte?

Gruss
Fred

Betrifft: AW: erste freie Spalte ....
von: Hajo_Zi
Geschrieben am: 20.10.2020 12:27:57

Hallo Fred,

LoLetzte = IIf(IsEmpty(Cells(10, Columns.Count)), Cells(10, Columns.Count).End(xlToLeft).Column, Columns.Count)

GrußformelHomepage

Betrifft: AW: erste freie Spalte ....
von: Nepumuk
Geschrieben am: 20.10.2020 12:32:28

Hallo Fred,

teste mal:

With Worksheets("Spiele")
    .Cells(10, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = "OK"
End With

Gruß
Nepumuk

Betrifft: Danke Nepumuk!.
von: Fred
Geschrieben am: 20.10.2020 12:37:49

jo Nepumuk,
das ist es, worum ich um Antwort bat.
Danke!

Gruss
Fred

Betrifft: AW: erste freie Spalte ....
von: Oberschlumpf
Geschrieben am: 20.10.2020 12:29:38

Hi
sheets("Spiele").Cells(10,sp1).Value = "OK"
Hilfts?

Ciao
Thorsten

Betrifft: nachgefragt ....
von: Fred
Geschrieben am: 20.10.2020 12:53:07

.. ich muss nochmals nachfragen
Worksheets("Auswertungen").Activate

With Worksheets("Auswertungen")
    .Cells(10, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y1")
    .Cells(11, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y2")
    .Cells(12, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y3")
    .Cells(13, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y4")
    .Cells(14, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y5")
    .Cells(15, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y6")
    .Cells(16, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y7")
End With
Die Werte aus "Spiele" (Y1:Y7) kopiere ich entsprechend nach "Auswertungen".
Kann man den Code kürzen?

Gruss
Fred

Betrifft: nachgefragt ....
von: Fred
Geschrieben am: 20.10.2020 12:53:07

.. ich muss nochmals nachfragen
Worksheets("Auswertungen").Activate

With Worksheets("Auswertungen")
    .Cells(10, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y1")
    .Cells(11, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y2")
    .Cells(12, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y3")
    .Cells(13, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y4")
    .Cells(14, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y5")
    .Cells(15, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y6")
    .Cells(16, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = Sheets("Spiele").Range("Y7")
End With
Die Werte aus "Spiele" (Y1:Y7) kopiere ich entsprechend nach "Auswertungen".
Kann man den Code kürzen?

Gruss
Fred

Betrifft: AW: nachgefragt ....
von: Nepumuk
Geschrieben am: 20.10.2020 12:59:41

Hallo Fred,

so:

With Worksheets("Auswertungen")
    Call Worksheets("Spiele").Range("Y1:Y7").Copy(Destination:= _
        .Cells(10, .Columns.Count).End(xlToLeft).Offset(0, 1))
End With

Gruß
Nepumuk

Betrifft: AW: nachgefragt ....
von: Fred
Geschrieben am: 20.10.2020 13:10:11

Hallo Nepumuk,
bitte nicht genervt sein!
Ich bräuchte nun noch die Lösung, wenn zB in y1:y7 Formeln stehen,- also nur das Formelergebnis kopiert werden soll.

Gruss
Fred

Betrifft: AW: nachgefragt ....
von: Nepumuk
Geschrieben am: 20.10.2020 13:15:33

Hallo Fred,

dann so:

With Worksheets("Auswertungen")
    Call Worksheets("Spiele").Range("Y1:Y7").Copy
    Call .Cells(10, .Columns.Count).End(xlToLeft).Offset(0, 1).PasteSpecial(Paste:=xlPasteValuesAndNumberFormats)
End With

Gruß
Nepumuk

Betrifft: alles Super, Nepumuk, DANKE! owt
von: Fred
Geschrieben am: 20.10.2020 13:24:41

.. danke, Nepumuk

Gruss
Fred

Beiträge aus dem Excel-Forum zum Thema "erste freie Spalte ...."