online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon little-key vom 03.10.2022, 23:55 Options

Lösung

Excel: Text in Spalte suchen, Zellen kopieren und einfügen

Hallo,

ein Problem jagd das andere:

In Spalte B stehen in den Zellen untereinander:
LI Licht1
LI Licht2
LI Haus1
AS Bauen
AS Kaufen
KR Steine
KR Beton
usw.

Nun soll in der Spalte nach den ersten beiden Buchstaben z.B. "LI" gesucht werden und alle gefundenen Zellen in die Spalte E ab Zeile 2 kopiert werden.

Die Suchvariable (hier LI) wird durch eine Inputbox eingegeben:

<code>
Sub Suche()
Dim i As Variant
i = InputBox("Bitte den Fachbereich in Klein-Buchstaben wählen:", "Fachbereich auswählen")
Range("D2").Select
ActiveCell = i
Columns("B:B").Select
...... hier weiter
</code>

Danke und Grüße Mario


Antwort schreiben

Antwort 1 von little-key vom 04.10.2022, 01:05 Options

Kleine Ergänzung noch wenn möglich:

dann in Spalte E die ersten beiden Buchstaben der Zellen (LI) löschen.

Antwort 2 von Beverly vom 04.10.2022, 10:15 Options

Hi Mario,

Sub Uebertragen()
    Dim lngZeile1 As Long
    Dim lngZeile2 As Long
    Dim strInputbox As String
    lngZeile1 = 1
    lngZeile2 = 1
    strInputbox = InputBox("Bitte den Fachbereich in Klein-Buchstaben wählen:", "Fachbereich auswählen")
    Do
        If Left(LCase(Cells(lngZeile1, 2)), 3) = strInputbox & " " Then
            Cells(lngZeile2, 5) = Mid(Cells(lngZeile1, 2), 4)
            lngZeile2 = lngZeile2 + 1
        End If
        lngZeile1 = lngZeile1 + 1
    Loop While Cells(lngZeile1, 2) <> ""
End Sub

Bis später,
Karin

Antwort 3 von nighty vom 04.10.2022, 10:21 OptionsLösung

Lösung
hi mario :-)

wie gewuenscht :-))

gruss nighty

Option Explicit  
Sub Einfuegen()
    Dim SpalteB() As Variant
    Dim SpalteF() As Variant
    Dim Zelle As Long, Zaehler As Long
    Dim SuchZelle As String
    SpalteB() = Range("B2:B" & Cells(Rows.Count, 2).End(xlUp).Row)
    Range("F2:F" & Cells(Rows.Count, 6).End(xlUp).Row).Clear
    SpalteF() = Range("F2:F" & Cells(Rows.Count, 2).End(xlUp).Row)
    SuchZelle = InputBox("Bitte einen zweistelligen Fachbereich angeben") & " "
    For Zelle = LBound(SpalteB()) To UBound(SpalteB())
        If Mid(UCase(SpalteB(Zelle, 1)), 1, 3) = UCase(SuchZelle) Then
            If Len(SuchZelle) = 3 Then
                Zaehler = Zaehler + 1
                SpalteF(Zaehler, 1) = Mid(SpalteB(Zelle, 1), 4, Len(SpalteB(Zelle, 1)))
            End If
        End If
    Next Zelle
    Range("F2:F" & Cells(Rows.Count, 2).End(xlUp).Row).Resize(UBound(SpalteF())) = SpalteF()
End Sub  

Antwort 4 von little-key vom 04.10.2022, 22:03 Options

Besten Dank an Euch beide.

Klappt beides wunderbar und wie gewünscht.

Gruß Mario

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026