Registriert seit: 01.08.2019
Version(en): 2007
Hallo, ich möchte ein Makro erstellen welche Werte aus einer Spalte in eine andere Tabelle einfügt. Dabei habe ich ein paar Probleme.
Teilweise gibt es Werte wie "(16/25)"; "(6/10)"; "(80/112)"; aber auch "(0/1)" "(-)"
Das sind dann immer 2 unterschiedliche Werte die ich separat aufgelistet haben möchte. "(-)" bedeutet dann (0/0) - schreibt es leider in der ersten Form auf.
Kann mir jemand eine Lösung erklären, wie ich die Werte aus der Klammer herausbekomme (bin leider nicht so begabt in Excel)
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
01.08.2019, 21:33
(Dieser Beitrag wurde zuletzt bearbeitet: 01.08.2019, 21:33 von MisterBurns.)
Hallo!
Dafür brauchst du kein Makro.
- Kopiere die komplette Liste in eine neue Tabelle
- Drücke Strg+h für Suchen/Ersetzen
- Ersetze "-" durch "0/0" (jeweils ohne Anführungszeichen) --> Alle ersetzen
- Ersetze "(" durch nichts --> Feld Ersetzen einfach leer lassen
- Ersetze ")" durch nichts
- Markiere die Spalte und wähle in der Menüleiste den Reiter Daten - Text in Spalten - Getrennt - Haken bei "Andere" setzen und den Schrägstrich eintragen - Fertig stellen
Et voila.
Alternativ - statt Text in Spalten - kannst du auch mit zwei Formeln in den Spalten daneben arbeiten:
Arbeitsblatt mit dem Namen 'Tabelle1' |
| A | B | C |
2 | 16/30 | 16 | 30 |
Zelle | Formel |
B2 | =LINKS(A2;FINDEN("/";A2)-1) |
C2 | =RECHTS(A2;LÄNGE(A2)-LÄNGE(B2)-1) |
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016 |
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg |
Schöne Grüße
Berni
00202
Nicht registrierter Gast
Hallo Marvin, :19:
wenn so etwas
öfter vorkommt - hier mal eine
mögliche Lösung per Makro: :21:
[attachment=25765]
Der
erste Button extrahiert die Zahlen im
gleichen Tabellenblatt in Spalte
B und
C.
Der
zweite Button extrahiert die Zahlen in
Tabellenblatt2 ohne Leerzeilen, wenn zwischen den Zahlen andere Dinge stehen. Hier wird auch - bei
mehrmaligem ausführen des Makros - unten angefügt. Wenn du das
nicht möchtest, musst du das
Kommentarzeichen vor der Codezeile...
Code:
'Tabelle2.Rows("2:" & Tabelle2.Rows.Count).ClearContents
...
entfernen.
Registriert seit: 01.08.2019
Version(en): 2007
04.08.2019, 17:52
(Dieser Beitrag wurde zuletzt bearbeitet: 04.08.2019, 17:58 von WillWissen.
Bearbeitungsgrund: Codetags
)
Tut mir leid für die späte Antwort, hat etwas gedauert bis ich dazu kam es auszuprobieren.
Es war eine sehr gute Idee mit "ersetzen" die ganzen Klammern und so weiter zu korrigieren. Habe jetzt eine grundsätzliche Lösung gefunden, dafür danke! :)
Code:
Sub Werte_uebertragen()
'
' Werte_uebertragen Makro
'
'
Range("A41").Select
Selection.Copy
Range("D3").Select
ActiveSheet.Paste
Range("A43").Select
Selection.Copy
Range("H3").Select
ActiveSheet.Paste
Range("A45:B45").Select
Selection.Copy
Range("J3").Select
ActiveSheet.Paste
Range("A47:B47").Select
Selection.Copy
Range("M3").Select
ActiveSheet.Paste
Range("A49:B49").Select
Selection.Copy
Range("P3").Select
ActiveSheet.Paste
Range("A51:B51").Select
Selection.Copy
Range("S3").Select
ActiveSheet.Paste
Range("A52").Select
Selection.Copy
Range("U3").Select
ActiveSheet.Paste
Range("A53").Select
Selection.Copy
Range("V3").Select
ActiveSheet.Paste
Range("A54").Select
Selection.Copy
Range("W3").Select
ActiveSheet.Paste
Range("A55").Select
Selection.Copy
Range("X3").Select
ActiveSheet.Paste
Range("A56").Select
Selection.Copy
Range("Y3").Select
ActiveSheet.Paste
Range("A58:B58").Select
Selection.Copy
Range("Z3").Select
ActiveSheet.Paste
Range("A59").Select
Selection.Copy
Range("AB3").Select
ActiveSheet.Paste
Range("A60").Select
Selection.Copy
Range("AC3").Select
ActiveSheet.Paste
Range("A63:B63").Select
Selection.Copy
Range("AE3").Select
ActiveSheet.Paste
Range("A64").Select
Selection.Copy
Range("AG3").Select
ActiveSheet.Paste
Range("A65").Select
Selection.Copy
Range("AH3").Select
ActiveSheet.Paste
End Sub
Allerdings ist es bei mir so, dass die "Quellspalte" (A) sehr lang ist.
Es wird von Eintrag A41 bis A65 die Werte in eine Tabelle übertragen (wobei nicht alle 25 Zeilen genommen werden). Die nächsten 25 Einträge (A66-A90) werden dann in die selbe Tabelle, nur eine Zeile darunter übertragen. (das insgesamt 34 mal)
Könnt ihr mir eine Lösung geben wie das einfach geht oder muss ich jetzt 33 mal copy-paste machen und die jeweiligen "Ranges" um 25 erweitern?
Registriert seit: 01.08.2019
Version(en): 2007
Könnte mir bitte jemand einen Tipp geben wie ich die anderen 33 Zeilen einfüge ohne dass ich jeden einzelnen Eintrag bearbeiten muss?