Kilo Mega Giga automatisch umrechnen lassen und Tabellenblätter

Knuddelbearli

Commodore
Registriert
Nov. 2009
Beiträge
4.538
Hallo, ich habe 2 Fragen zu Excel.

1.) Ich habe eine Tabelle mit Messergebnissen von Isolationsmessungen in Ohm: Kilo, Mega oder Giga je nach Höhe.
z.B.
500KΩ
500MΩ
1,5GΩ oder
2.000MΩ (da Isolationswert größer als der Messbereich, der bei 2Giga endet).

Kann ich das mit wenig Aufwand alles auf MΩ umrechnen lassen? und den Text entfernen? also aus 500KΩ wird z.B. einfach 0,5 und aus den 1,5GΩ wird 1500.
Momentan mache ich das manuell, indem ich die Zahl vom Text trenne und dann nacheinander umrechne (für Kilo /1000, für Giga *1.000) Geht das einfacher?

2.) Wenn ich sehr viele verschiedene Arbeitsblätter brauche, kann ich diese irgendwie automatisch benennen lassen, indem ich z.B. die Namen in eine Zelle schreibe und mir dann die Arbeitsblätter entsprechend erstellen lasse? z.B. Ich brauche 5 Arbeitsblätter mit den Namen: Markus, Lilith, Sophia, Emanuel und Giorgio.

Schonmal vielen Dank!
 
Zu 1)

Das hier könnte als Formel in der Zelle funktionieren:
Code:
=WENN(RECHTS(A2,1)="K",WERT(ERSETZEN(A2,LÄNGE(A2),1,""))/1000,IF(RECHTS(A2,1)="M",WERT(ERSETZEN(A2,LÄNGE(A2),1,"")),WENN(RECHTS(A2,1)="G",WERT(ERSETZEN(A2,LÄNGE(A2),1,""))*1000,A2)))

zu 2)
  1. Öffne deine Excel-Datei und drücke "Alt + F11", um den Visual Basic Editor zu öffnen.
  2. Klicke auf "Einfügen" und wähle "Modul" aus dem Dropdown-Menü.
  3. In das Modulfenster, das erscheint, füge den folgenden VBA-Code ein:

Code:
Sub ArbeitsblattAnlegen()
    Dim NamenRange As Range
    Dim Zelle As Range
    Dim Arbeitsblatt As Worksheet
    
    ' Hier den Bereich angeben, in dem sich die Namen befinden
    Set NamenRange = ThisWorkbook.Sheets("Dein_Ausgangsblatt").Range("A1:A" & ThisWorkbook.Sheets("Dein_Ausgangsblatt").Cells(Rows.Count, 1).End(xlUp).Row)
    
    ' Schleife über die Zellen im Bereich
    For Each Zelle In NamenRange
        ' Überprüfe, ob der Zellenwert nicht leer ist
        If Trim(Zelle.Value) <> "" Then
            ' Überprüfe, ob ein Arbeitsblatt mit dem Namen bereits existiert
            On Error Resume Next
            Set Arbeitsblatt = Worksheets(Zelle.Value)
            On Error GoTo 0
            
            ' Falls das Arbeitsblatt noch nicht existiert, lege es an
            If Arbeitsblatt Is Nothing Then
                ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)).Name = Zelle.Value
            End If
        End If
    Next Zelle
End Sub
  • Klicke auf "Entwicklertools" in der Menüleiste von Excel (falls nicht sichtbar, aktiviere die Registerkarte "Entwicklertools" über die Excel-Optionen) und wähle "Makros".
  • Wähle das Makro "ArbeitsblattAnlegen" aus der Liste und klicke auf "Ausführen".

Grüße ins civforum!
 
super, danke! werde wohl erst am Mittwoch dazu kommen das zu testen, aber werde mich dann auf jedenfall rückmelden!
 
Ich würde mich mit dem Codevorschlag so nicht einverstanden erklären.
Weil Informationen fehlen.

Was ist dort als Rohwert in den Zellen eingetragen?
Steht da «500MΩ» drin oder «500.000.000» was mit passender Formatierung nur als ‹500MΩ› dargestellt wird?

Je nach dem ist das ganz einfach da die Widerstandswerte als Zahlen vorliegen die nur ein bisschen Kommaverschiebung brauchen - oder man muss K, M und G ausfiltern um dann den Zahlenwert mit der jeweiligen 10er-Potenz zu multiplizieren… Moment; ich nehme intelligent natürlich jeweils nur die die mir MΩ auswirft.

CN8
 
Ja weill man ja sonst bis dahin nichts anderes zu tun hat und ich bis dahin nur Däumchen drehe ...
Und muss das eben alle paar Wochen machen und das jeweils mit paar tausend Werten, da lohnt sich einmal anfangs investierte Zeit schnell extrem!


@cumulonimbus8 Habe jetzt nur ganz schnell über den Code drübergeschaut aber das scheint schon so zu passen, und ja da steht wirklich 500MΩ in einem als Text formartieren Feld, sowohl das Einheitszeichen als auch die Zahl im selben Feld.
 
Knuddelbearli schrieb:
Ja weill man ja sonst bis dahin nichts anderes zu tun hat und ich bis dahin nur Däumchen drehe ...
Wußte ich doch. ;)

Knuddelbearli schrieb:
Und muss das eben alle paar Wochen machen und das jeweils mit paar tausend Werten,
Das hattest Du leider nicht erwähnt.

Knuddelbearli schrieb:
da lohnt sich einmal anfangs investierte Zeit schnell extrem!
Ja, so ein bißchen VBA hilft da ungemein.
 
Zurück
Oben