Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
752to756
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
752to756
752to756
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Filter Benutzerdefiniert Formatproblem

Filter Benutzerdefiniert Formatproblem
10.04.2006 16:38:40
helena
Hallo
habe ein Problem im File seht Ihr das Problem
die Daten sind von SAP, multiplziert usw. alles getestet
Hintergrund mit SVERWEIS sollte Daten weiterverarbeiten können
und Filtern mit 1234* und dies geht nicht in Orginal schon.
Es muss eine Möglichkeit geben das
Format wieder zuzuweisen am besten mit VBA
https://www.herber.de/bbs/user/32754.xls
DANKE
gruss helena

23
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Filter Benutzerdefiniert Formatproblem
10.04.2006 16:40:52
Rocky
Hallo,
also bei mir gehts!
Gruß Rocky
"Wenn unter den Blinden der Einäugige König ist, dann findet man hier die Herren der Ringe"

AW: Filter Benutzerdefiniert Formatproblem
10.04.2006 17:03:16
helena
Also bei mir gehts nicht auch nicht auf 5 andren Rechnern
klicke auf FILTER BEnutzer definiert und gib ein 541*
dann bleibt Spalte leer
SPALTE A geht SPALTE B nicht
gruss helena
AW: Filter Benutzerdefiniert Formatproblem
10.04.2006 18:00:12
Rocky
Ich kann es nur wiederholen. bei mir gehts
hab folgendes gemacht. Erst Autofilter aus dann die bunten makiert DATEN FILTER AUTOFILTER
dann dropp down bei geht nicht
Benutzerdifiert
drop down entspricht und rechts dann deine zahl 541
er hat gefiltert wie er soll!
Gruß Rocky
"Wenn unter den Blinden der Einäugige König ist, dann findet man hier die Herren der Ringe"

Anzeige
geht nicht
10.04.2006 18:07:52
helena
Hallo
und es geht nicht du hast das 541* vergessen *STERN* nimm doch kinks mal
54* (mit Stern) er filtert und nun Spalte B das gleiche.
gruss helena
Ich nehm alles zurück!
10.04.2006 18:18:25
Rocky
habs mit fast allen benutzerdefinierten formatierungen probiert geht nicht.
frage offen! Sorry
Gruß Rocky
"Wenn unter den Blinden der Einäugige König ist, dann findet man hier die Herren der Ringe"

Anzeige
AW: Ich nehm alles zurück!
HansHei
Hallo,
versuch mal Spalte B als Text formatieren und hinter jede Zahl mindestens ein Leerzeichen anfügen. Wenns klappt, müsste nur ein vernünftiges Makro her :-)
Gruß
Hans
AW: Ich nehm alles zurück!
HansHei
Hallo,
Hab da mal ein Makro zusammengeklaut :-)
Sub TEST_10()
Dim j
Dim i
    Columns("B:B").NumberFormat = "@"
    For j = 1 To[B65536].End(xlUp).Row
    For i = Len(Cells(j, 2)) + 1 To 10
    Cells(j, 2) = Cells(j, 2) & " "
    Next i
    Next j
End Sub
Gruß
Hans
Anzeige
Jippehh es geht weiter ...
10.04.2006 19:54:54
helena
Hallo Hans
du hast Recht ist die LÖSUNG, nun ein Makro das in ganzer Spalte
sagen wir mal B erst mal Format Text und anschlessendjede Zellen
von A3 bis Axx (letzte gefüllte Telle ein leerzeichen am Ende reinschreibt
d.h. nach letzte Zeichen.
DANKE für Idee aber Ansatz ist gemacht
gruss helen
AW: Jippehh es geht weiter ...
10.04.2006 20:24:57
Jürgen
Hallo Helen,
das Makro ist nicht besonders schön aber es wandelt die Daten in Spalte B in Text um und fügt Leerzeichen ein. Das Filtern klappt dann in dieser Spalte schon einmal.
Public

Sub Leerstelle()
Dim Zelle As String
Dim con As String
Range("B1").Select
Do Until ActiveCell.Value = ""
ActiveCell.NumberFormatLocal = "@"
Zelle = ActiveCell.Text
con = ActiveCell.Text & Space(25 - Len(ActiveCell.Text))
ActiveCell.Value = con
ActiveCell.Offset(1, 0).Select
Loop
End Sub

Gruß Jürgen
Anzeige
AW: Jippehh es geht weiter ...
10.04.2006 20:45:40
helena
Hallo es funktioniert
einzig die Spalte wir so breit max Zahl an Zahlen ist 7 & 1 Leerschlag
d.h. wenn Spalte 10 hat im MAX ist SUPER
Danke Euch jetzt schon
gruss helena
noch ws kleines
10.04.2006 20:46:41
helena
siehe Eintrag oben Spaltenbreite
AW: noch ws kleines
10.04.2006 21:11:50
Jürgen
Hallo Helen,
jetzt wird die Spalte bei 7zeiligen Einträge maximal 10 lang. Jedoch bei 3 Zeichen auch kürzer. Probier mal, ob es so besser ist.
Public

Sub Leerstelle()
Dim strZelle As String
Dim strKons As String
Range("B1").Select
Do Until ActiveCell.Value = ""
ActiveCell.NumberFormatLocal = "@"
strZelle = ActiveCell.Text
strKons = ActiveCell.Text & Space(10 - Len(ActiveCell.Text))
ActiveCell.Value = strKons
ActiveCell.Offset(1, 0).Select
Loop
End Sub

Gruß Jürgen
PS: Bitte kurze Rückmeldung ob geklappt.
Anzeige
AW: noch ws kleines
10.04.2006 21:30:51
Jürgen
Hallo Helen,
noch ein kleiner Zusatz. Deine Beispielmappe filtern in Spalte A, weil dort ebenfalls Leerzeichen hinter den Zahlen sind. Wenn du jetzt irgendwas mit einem Sverweis abgleichen willst, klappt es nur, wenn das Makro genau die richtige Anzahl an Leerzeichen einfügt. Hier nochmal der Code, bei dem dieses klappt. Aber die Spalten sind natürlich wieder etwas breiter. Aber eigentlich sollte das nicht stören, da die Importdaten doch ebenfalls diese Anzahl an Leerzeichen beinhalten.
Public

Sub Leerstelle()
Dim strZelle As String
Dim strKons As String
Range("B1").Select
Do Until ActiveCell.Value = ""
ActiveCell.NumberFormatLocal = "@"
strZelle = ActiveCell.Text
'Nun identisch mit Importdaten
strKons = ActiveCell.Text & Space(16 - Len(ActiveCell.Text))
ActiveCell.Value = strKons
ActiveCell.Offset(1, 0).Select
Loop
End Sub

Gruß Jürgen
Anzeige
AW: noch ws kleines
10.04.2006 21:48:17
helena
Makro
steckt ungültiges Argument
strKons = ActiveCell.Text & Space(16 - Len(ActiveCell.Text))
she aber Var ist deklariert
grusss helena
AW: noch ws kleines
10.04.2006 22:07:50
Jürgen
Hallo Helen,
ja das ist, weil du vermutlich in Spalte B noch die Version mit den vielen Leerzeichen hast. Kannst du diese mal löschen und nochmal originale Daten nehmen? Ansonsten müsste das Makro zuvor erst alle Leerzeichen entfernen.
Gruß Jürgen
AW: noch ws kleines
10.04.2006 22:20:38
helena
Hallo Jürgen
Danke erst mal
so habe Org. Datei wieder hochgeladen auf PC Spalte A sind die Org, Daten
und B ist bereits als ZAHL formatiert, kann mich darauf nicht verlassen
denn nach IMPORT aus SAP ist es nicht so sicher was ich wo antreffe, richtig
ist ich benühe aus dieser Datei wiederum die Möglichkeit als SVERWIS und dies scheunt zu gehen.
Gleich Fehler gleich Zeile
gruss helena
Anzeige
AW: noch ws kleines
10.04.2006 22:29:00
Jürgen
Hallo Helena,
ich kann dir nur noch das hier anbieten, so fit bin ich auch noch nicht mit VBA. Ich lass die Frage mal offen, bestimmt hat noch jemand ne bessere Lösung. Aber bei mir läuft es.
Public

Sub Leerstelle()
Dim strZelle As String
Dim strKons As String
Dim text As String
Dim trimtext As String
Range("B1").Select
Do Until ActiveCell.Value = ""
ActiveCell.NumberFormatLocal = "@"
strZelle = ActiveCell.text
'Leerzeichen entfernen
text = ActiveCell.Value
trimtext = LTrim(RTrim(text))
ActiveCell.Value = trimtext
'Leerzeichen einfügen
strKons = ActiveCell.text & Space(16 - Len(ActiveCell.text))
ActiveCell.Value = strKons
ActiveCell.Offset(1, 0).Select
Loop
End Sub

Gruß Jürgen
Anzeige
AW: Filter Benutzerdefiniert Formatproblem
10.04.2006 23:20:29
PeterW
Hallo Helena,
sofern du nicht alle Spalten benutzt wäre das vielleicht ein Weg, bei dem nicht jede Zelle einzeln bearbeitet werden muss:

Sub Helena()
Columns(3).Insert
With Range("C2")
.FormulaLocal = "=TEXT(B2;0)"
.AutoFill Destination:=Range("C2:C" & Cells(Rows.Count, 2).End(xlUp).Row)
End With
Range("C2:C" & Cells(Rows.Count, 3).End(xlUp).Row).Copy
Range("B2").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Columns(3).Delete
End Sub

Gruß
Peter
AW: Filter Benutzerdefiniert Formatproblem
11.04.2006 01:57:18
Tassos
Hallo an alle!
So geht´s:
Option Explicit

Sub Test()
Dim b, c As Range, a$
a = InputBox("Bitte Spalte auswählen (In Buchstaben)", , "B"), , "B")
If a = "" Or a = "0" Then Exit Sub
Set b = Range(a & "1:" & a & Range(a & "65536").End(xlUp).Row)
With b
.NumberFormat = "@"
For Each c In b
c.Value = c.Value & ""
Next
End With
End Sub

'oder mit Fixen ColumnIndex:

Sub Test1()
Dim b, c As Range
Set b = Range("B1:B" & Cells(65536, 2).End(xlUp).Row)
With b
.NumberFormat = "@"
For Each c In b
c.Value = c.Value & ""
Next
End With
End Sub

Gruß
Tassos
Anzeige
Kleine Korrektur...
11.04.2006 02:04:47
Tassos
zuviel eingefügt!
a = InputBox("Bitte Spalte auswählen (In Buchstaben)", , "B")
statt: a = InputBox("Bitte Spalte auswählen (In Buchstaben)", , "B"), , "B")
Noch ne kleine Korrektur...
11.04.2006 07:39:43
Harald
Hi Tassos,
Sub Test1()
Dim b, c As Range
deklariert b als Variant und nur c als Range
Richtig ist dieses:
Dim b as range, c as range
Wie gesagt, nur ne kleine Korrektur. ;-))
Gruss Harald
an alle netten Helfer ....
11.04.2006 07:48:00
helena
Vielen DANK für Eure Bemühungen, div. Varianten
haben funktioniert und habe mich am Schluss entschlossen
die die Lösung von TASSO zu nehmen da er auch eine Variante
zur freien Wahl der Spalte geboten hat (war eigentlich nicht gefordert)
Aber dies gibt wieder freie Variante auch für Anfänger
DANKE
gruss helena
AW: an alle netten Helfer ....
11.04.2006 12:22:35
Tassos
Hallo Harald,
Danke für Deine Korrektur!
Schöne Grüsse an alle!
Tassos

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige