Thema Datum  Von Nutzer Rating
Antwort
08.06.2020 20:18:18 Bernhard
NotSolved
08.06.2020 21:12:03 AlterDresdner
NotSolved
09.06.2020 09:14:40 Gast87195
NotSolved
09.06.2020 22:04:22 Bernhard
NotSolved
10.06.2020 11:34:27 Martin
*****
Solved
10.06.2020 11:59:11 Martin
NotSolved
16.06.2020 15:00:40 Bernhard
NotSolved
Blau Makro gesucht
16.06.2020 17:17:49 Bernhard
NotSolved

Ansicht des Beitrags:
Von:
Bernhard
Datum:
16.06.2020 17:17:49
Views:
705
Rating: Antwort:
  Ja
Thema:
Makro gesucht

Hallo,

ich habe die Ausgabe nun etwas verändert. Dabei und bei der Verwendung von Exchtdaten ist mir aufgefallen, dass das Makro bei der Ausgabe von Zahlen mit drei Kommastellen, das Komma weglässt.

D.h. dass z.B. aus 265.559,888 (Input) 265.559.888 (Output) werden.

Option Explicit
 
Public out As Range 'erste Zelle in Ausgabetabelle
Public ctZ As Integer 'Zeile in Ausgabetabelle
Public ctS As Integer 'Spalte in Ausgabetabelle
 
 
Sub durchlauf()
Dim firstpos As Range 'erste Zelle in Eingabetabelle
Dim ze As Integer 'Zeile in Eingabetabelle
Dim sp As Integer 'Spalte in Eingabetabelle
Dim aktSP As String 'Inhalt erste Zeile der aktuellen Spalte
Dim aktZE As String 'Inhalt erste Spalte der ersten Zeile
Dim wert As String 'Inhalt der aktuellen Zelle
 
 
Set firstpos = Sheets("input").Range("A1")
Set out = Sheets("output").Range("A1")
ze = 0
sp = 0
ctZ = 0
ctS = 0
While firstpos.Offset(0, sp + 1).Value <> 0 'solange es spalten gibt
    sp = sp + 1
    While firstpos.Offset(ze + 1, 0).Value <> 0 'solange es zeilen gibt
        ze = ze + 1
        wert = firstpos.Offset(ze, sp).Value
        If wert <> Str("0") And wert <> "" Then 'wenn etwas in Zeile Zeile steht
        aktSP = firstpos.Offset(0, sp).Value
        aktZE = firstpos.Offset(ze, 0).Value
        ausgabe aktSP, aktZE, wert
        End If
    Wend
ze = 0
ctS = 0
'ctZ = ctZ + 1
Wend
End Sub
 
Function ausgabe(ze, sp, wert)
out.Offset(ctZ, ctS).Value = ze
out.Offset(ctZ, ctS + 1).Value = sp
out.Offset(ctZ, ctS + 2).Value = wert
ctZ = ctZ + 1
End Function

 

Input:

  Spalte1 Spalte2 Spalte3 Spalte4
Zeile1 265.559,888 60,000   10,000
Zeile2   40,000 20,000 40,000
Zeile3 30,000   10,000 20,000
Zeile4     70,000 20,000
Zeile5 50,000     10,000

Output:

Spalte1 Zeile1 265.559.888
Spalte1 Zeile3 30
Spalte1 Zeile5 50
Spalte2 Zeile1 60
Spalte2 Zeile2 40
Spalte3 Zeile2 20
Spalte3 Zeile3 10
Spalte3 Zeile4 70
Spalte4 Zeile1 10
Spalte4 Zeile2 40
Spalte4 Zeile3 20
Spalte4 Zeile4 20
Spalte4 Zeile5 10

Wie kann ich das verhindern?

Also Laie habe es mit Dim Wert As Double versucht, aber dann sind die Typen unverträglich.

Danke!

LG Bernhard


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
08.06.2020 20:18:18 Bernhard
NotSolved
08.06.2020 21:12:03 AlterDresdner
NotSolved
09.06.2020 09:14:40 Gast87195
NotSolved
09.06.2020 22:04:22 Bernhard
NotSolved
10.06.2020 11:34:27 Martin
*****
Solved
10.06.2020 11:59:11 Martin
NotSolved
16.06.2020 15:00:40 Bernhard
NotSolved
Blau Makro gesucht
16.06.2020 17:17:49 Bernhard
NotSolved