Thema Datum  Von Nutzer Rating
Antwort
15.06.2021 17:20:48 Makro_Starter
NotSolved
15.06.2021 20:44:03 Gast68247
NotSolved
16.06.2021 16:37:43 Der Steuerfuzzi
NotSolved
Blau Byte Zaehler erstellen
17.06.2021 11:18:15 Der Steuerfuzzi
*****
Solved

Ansicht des Beitrags:
Von:
Der Steuerfuzzi
Datum:
17.06.2021 11:18:15
Views:
486
Rating: Antwort:
 Nein
Thema:
Byte Zaehler erstellen

Mal abgesehen, davon, ob diese Ermittlung Sinn macht:

Da Du das Ergebnis sowieso in die Tabelle schreibst, würde ich das ganze als benutzerdefinierte Funktion mit Select Case umsetzen, z. B. so:

Function ByteZaehler(rng As Range)
If rng.Cells.Count > 1 Then Exit Function
For i = 1 To rng.Characters.Count
    Select Case rng.Characters(i, 1).Text
        Case "ä", "ö", "ü", "Ä", "Ö", "Ü", "ß"
            ByteZaehler = ByteZaehler + 2
        Case Else
            ByteZaehler = ByteZaehler + 1
    End Select
Next
End Function

Das ist schon deshalb sinnvoll, da Du eventuell nicht daran denkst, dass das Ergebnis eine Zelle über der aktiven Zelle eingefügt wird. Denn der darin stehende Inhalt wird gelöscht (ohne das rückgäng machen zu können). Da ist eine Funktion etwas vorteilhafter, da ich genau weiß wo ich die Formel eintrage.

 

Excel verwendet mW für jedes Unicode-Zeichen 2 Byte, egal welches Zeichen (in der Reigenfolge High Byte Low Byte = Big Endian):

Sub ByteTest()
Dim bytText() As Byte
Dim strText As String
strText = "Dies ist ein Täst"
bytText = strText
Debug.Print "Anzahl Bytes:   " & UBound(bytText) + 1 'Da der Index bei 0 beginnt
Debug.Print "Anzahl Zeichen: " & Len(strText)
End Sub

 


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
15.06.2021 17:20:48 Makro_Starter
NotSolved
15.06.2021 20:44:03 Gast68247
NotSolved
16.06.2021 16:37:43 Der Steuerfuzzi
NotSolved
Blau Byte Zaehler erstellen
17.06.2021 11:18:15 Der Steuerfuzzi
*****
Solved