Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1032to1036
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

Wie kann ich den folgenden rang umrechnen..?

Wie kann ich den folgenden rang umrechnen..?
12.12.2008 08:01:11
Joachim
HI,
ich habe in meinem sheet eine Spalte , die hat folgende Einträge:
005/003
008/006
002/003
008/003
in der ersten bedeutet das zB 5 Jahre und 3 Monate
Wie kann ich den die Spalte (im Range D20:D350) so umrechnen:
1/12 von 3 + 5
Also auf deutsch: Vorderer Teile (5) + 1/zwölftel vom hinteren Teil (3)
Als ERgebnis sollte nachher in der ersten Zeile 5,25 in der zweiten 8,5 usw. rauskommen.
Weiss jemand, wi man das umrechnen kann ?
Danke
Joachim

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wie kann ich den folgenden rang umrechnen..?
12.12.2008 08:12:08
Beverly
Hi Joachim,
=LINKS(D20;3)*1+RECHTS(D20;3)/12


Gehts auch mit einem Makro ? :-) oT
12.12.2008 08:14:18
Joachim
Weshalb unbedingt VBA, wenn man es auch mit...
12.12.2008 08:19:00
Beverly
Hi Joachim,
...einer Formel lösen kann?

Sub umwandeln()
Dim inZeile As Integer
For inZeile = 20 To 350
Cells(inZeile, 5) = Left(Cells(inZeile, 4), 3) * 1 + Right(Cells(inZeile, 4), 3) / 12
Next inZeile
End Sub




Hi, bei mir kommt da immer eine Fehlermeldung.
12.12.2008 08:45:21
Joachim
Funktioniert es bei Dir ? bei mir kommt der Fehler: Typen unverträglich
Gruss
Joachim
Anzeige
liegt es vielleicht daran..
12.12.2008 08:50:28
Joachim
...
dass meine Daten in der Spalte D liegen und ich auch wieder versuche , diese in D reinzuschreiben.
Ich möchte die Spalte eigentlich nur wumrechnen und nicht woanders reinschreiben
Gruss
Joachim
AW: oder vielleicht an..
12.12.2008 09:13:00
Erich
Hallo Joachim,
wenn beim folgenden Makro MsgBoxen auftauchen,
sind deine Daten nicht korrekt:

Sub umwandeln2()
Dim lngZ As Long, bolF As Boolean
For lngZ = 20 To 350
bolF = True
If Not IsNumeric(Left(Cells(lngZ, 4), 3)) Then
MsgBox "Erste drei Stellen von " & Cells(lngZ, 4) & " in Zeile " & lngZ
bolF = False
End If
If Not IsNumeric(Right(Cells(lngZ, 4), 3)) Then
MsgBox "Letzte drei Stellen von " & Cells(lngZ, 4) & " in Zeile " & lngZ
bolF = False
End If
If bolF Then
Cells(lngZ, 4) = Left(Cells(lngZ, 4), 3) + Right(Cells(lngZ, 4), 3) / 12
End If
Next lngZ
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: liegt es vielleicht daran..
12.12.2008 09:13:51
Tino
Hallo,
vieleicht sind noch irgendwelche leerzeichen bei dir vorhanden!?
Option Explicit
Sub umwandeln()
Dim lngRow As Long
Dim W_Rechts As Double, W_Links As Double
   
  For lngRow = 20 To Cells(Rows.Count, "D").End(xlUp).Row
      
      With Cells(lngRow, "D")
       
       If .Value <> "" Then
          W_Rechts = Trim(Right(.Value, Len(.Value) - InStr(.Value, "/")))
          W_Links = Trim(Left(.Value, InStr(.Value, "/") - 1))
          .Value = W_Links + W_Rechts / 12
       End If
      
      End With
   
   Next lngRow
End Sub


Gruß Tino

Anzeige
jetzt gehts..
12.12.2008 09:52:13
Joachim
Hi Tino,
jetzt funktioniert es, ich vermute mal , es lag an den leeren Zellen, die dazwischen waren.
Vielen Dank.
Joachim

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige