Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1284to1288
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

Buchstaben löschen

Buchstaben löschen
01.11.2012 12:28:49
kurt
Hallo zusammen,
ich such ein Makro, welches die Buchstaben löscht bis die 1. Ziffer kommt.
Es können auch Leerzeichen drin sein.
Z.B. eeer 2345, dann sollte alles gelöscht werden bis zur 2.
Die Spalte ist die "D" ab Zeile 4 und die Länge sollte nach der
Spalte A bestimmt werden.
gruß kurt k

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Buchstaben löschen
01.11.2012 12:40:04
kurt
Hallo Hajo,
weil ich keine Spalte FREI habe.
Deshalb habe ich gedacht mit einem Makro erledigen.
gruß kurt k

AW: Buchstaben löschen
01.11.2012 12:59:17
Klaus
Hallo Kurt,
deine Tabelle benutzt 256 Spalten? Alle von A bis IV sind belegt? Glaub ich kaum.
Die Makrolösung sähe (bei mir) so aus:
- erwähnte Formel in eine freie Spalte kopieren
- die verformelte Spalte markieren und kopieren
- in der Zielspalte als "Werte" einfügen
- die Hilfsspalte wieder löschen
Oder wenn ich es nur einmal brauche, würd ich das o.g. einfach per Hand machen.
Warum etwas in VBA programmieren, wenns schon ne Formellösung gibt? Wie gesagt, dass du dauerhaft 256 Spalten belegst glaube ich dir einfach nicht.
Grüße,
Klaus M.vdT.
(Ich lass mal offen, falls jemand Lust hat das VBA zu schreiben)

Anzeige
AW: Buchstaben löschen
01.11.2012 13:09:27
ransi
Hallo Kurt
Versuch mal so:
Vorher:
Tabelle1

 ABCD
4   Betrifft: Buchstaben löschen
5   von: kurt K
6Text  Geschrieben am: 01.11.2012 12:28:49
7Text   
8Text  Hallo zusammen,
9Text  ich such ein Makro, welches die Buchstaben löscht bis die 1. Ziffer kommt.
10Text  Es können auch Leerzeichen drin sein.
11Text  Z.B. eeer 2345, dann sollte alles gelöscht werden bis zur 2.
12Text  Die Spalte ist die "D" ab Zeile 4 und die Länge sollte nach der
13Text  Spalte A bestimmt werden.
14Text  gruß kurt k
15Text   
16Text   
17Text   
18Text   
19Text   
20Text   
21Text   
22Text   
23Text   
24Text   
25Text   
26Text   
27Text   


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Jetzt diesen kleinen Code:
Option Explicit

Sub machs()
    Dim regex As Object
    Dim Zelle As Range
    Dim L As Long
    With Sheets("Tabelle1")
        L = .Cells(.Rows.Count, 1).End(xlUp).Row
    End With
    Set regex = CreateObject("vbscript.Regexp")
    With regex
        .Pattern = "\d.+"
        For Each Zelle In Range("D4:D" & L)
            If .test(Zelle.Text) Then
                Zelle.Value = .Execute(Zelle.Text)(0)
            End If
        Next
    End With
End Sub



Nachher:
Tabelle1

 ABCD
4   Betrifft: Buchstaben löschen
5   von: kurt K
6Text  01.11.2012 12:28:49
7Text   
8Text  Hallo zusammen,
9Text  1. Ziffer kommt.
10Text  Es können auch Leerzeichen drin sein.
11Text  2345, dann sollte alles gelöscht werden bis zur 2.
12Text  4 und die Länge sollte nach der
13Text  Spalte A bestimmt werden.
14Text  gruß kurt k
15Text   
16Text   
17Text   
18Text   
19Text   
20Text   
21Text   
22Text   
23Text   
24Text   
25Text   
26Text   
27Text   


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
ransi

Anzeige
Ransi das klappt einwandfrei, DANKE !
01.11.2012 13:49:25
kurt

AW: Buchstaben löschen
01.11.2012 13:09:08
Hajo_Zi
Hallo Kurt,
Option Explicit Sub Wert() Dim LoLetzte As Long Dim LoI As Long Dim StWert As String LoLetzte = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _ Count) For LoI = 1 To LoLetzte StWert = Cells(LoI, 1) Cells(LoI, 1) = Trim(Evaluate("=RIGHT(A1,COUNT(RIGHT(A1,COLUMN(1:1))*1))")) '{=RECHTS(A1;ANZAHL(RECHTS(A1;SPALTE(1:1))*1))} Next LoI End Sub Gruß Hajo

AW: Buchstaben löschen
01.11.2012 13:20:24
Hajo_Zi
Hallo Kurt,
und jetzt für die Spalte.
Option Explicit
Sub Wert()
Dim LoLetzte As Long
Dim LoI As Long
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _
Count)
For LoI = 1 To LoLetzte
Cells(LoI, 1) = Trim(Evaluate("=RIGHT(" & Cells(LoI, 1).Address & ",COUNT(RIGHT(" &  _
Cells(LoI, 1).Address & ",COLUMN(1:1))*1))"))
'{=RECHTS(A1;ANZAHL(RECHTS(A1;SPALTE(1:1))*1))}
Next LoI
End Sub
Gruß Hajo

Anzeige
AW: Buchstaben löschen
01.11.2012 13:56:07
kurt
Hallo Hajo,
habe versucht mal eine Spalte eingefügt zum Testen, jetzt in Spalte H,
klappte nicht.
Sub Wert_Spalte()
Dim LoLetzte As Long
Dim LoI As Long
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, 2)), Cells(Rows.Count, 2).End(xlUp).Row, Rows. _
Count)
For LoI = 1 To LoLetzte
Cells(LoI, 1) = Trim(Evaluate("=RIGHT(" & Cells(LoI, 8).Address & ",COUNT(RIGHT(" & _
Cells(LoI, 8).Address & ",COLUMN(8:8))*1))"))
'{=RECHTS(A1;ANZAHL(RECHTS(A1;SPALTE(1:1))*1))}
Next LoI
End Sub

die Länge jetzt zu Spalte B, könntest Du mal schauen ?
mfg kurt k

Anzeige
AW: Buchstaben löschen
01.11.2012 13:59:33
Hajo_Zi
Hallo Kurt,
es geht um Saplte H
Die letzte Zelle wird in Spalte B festgestellt.
Die Werte werden in Spalte A geschrieben und der Wert wird aus Spalte H genommen.
Warum 1:1 auf 8:8 geändert wurde ist mir nicht klar. Ich habe die Formel auch nicht erstellt.
Gruß Hajo

AW: Buchstaben löschen
01.11.2012 14:35:40
Peter
Hallo Kurt,
versuche es so:
Public Sub Test()
Dim Regex   As Object
Dim WkSh    As Worksheet
Dim lZeile  As Long
Set Regex = CreateObject("Vbscript.regexp")
Set WkSh = ThisWorkbook.Worksheets("Tabelle1")
For lZeile = 4 To WkSh.Cells(WkSh.Rows.Count, 1).End(xlUp)
With Regex
.Global = True
.Pattern = "\D"
WkSh.Range("D" & lZeile).Value = .Replace(WkSh.Range("D" & lZeile).Value, vbNullString) _
End With
Next lZeile
End Sub

Gruß Peter

Anzeige
Danke -)
01.11.2012 15:10:53
kurt
Hallo Hajo und Peter für die Unterstützung.
Das wollte ich so,
schönen Feiertag noch wenn bei EUCH ist.
gruß kurt k

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige