Iterieren durch einen string und prüfen Sie den byte-Wert der jedes Zeichen?
Code habe ich:
cell_val = CStr(Nz(fld.value, ""))
Dim iter As Long
For iter = 0 To Len(cell_val) - 1 Step 1
If Asc(Mid(cell_val, iter, 1)) > 127 Then
addlog "Export contains ascii character > 127"
End If
Next iter
Dieser code funktioniert nicht. Wer weiß, wie dies zu tun? Ich habe einfach habe keine Ahnung mit VB oder VBA.
InformationsquelleAutor bfabry | 2008-09-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich glaube, dein problem ist, dass in VBA-string-Indizes beginnen bei 1 und nicht bei 0. Versuchen Sie Folgendes:
InformationsquelleAutor jan.vdbergh
Mit VBA, VB6, können Sie nur erklären, sondern ein byte-array und weisen Sie einen string-Wert an, und es wird konvertiert für Sie. Dann können Sie nur Durchlaufen, es wie ein normales array.
z.B.
InformationsquelleAutor Sam
Deinem Beispiel sollte modifiziert werden, so dass es keine externen Abhängigkeiten, es hängt nun davon ab, Nz und addLog.
Sowieso, das problem hier scheint zu sein, dass Sie Schleife von 0 bis len()-1. In VBA wäre dies 1 bis n.
InformationsquelleAutor vzczc
Hast du Debuggen? 😉 Sind Sie sicher, dass die cell_val ist nicht leer? Auch müssen Sie nicht den 'Schritt 1' in der For-Schleife, da es Standardwert ist. Auch das, was Sie erwarten, zu acomplish mit Ihrem code? Es wird protokolliert, wenn alle ascii-Werte über 127? Aber das ist es - es gibt keine Verzweigung, je nach dem Ergebnis?
InformationsquelleAutor Per Hornshøj-Schierbeck
Versucht AscW()
InformationsquelleAutor Scott Evernden
Ich nicht Debuggen, ich habe keine Ahnung, wie Sie vba verwenden, oder eines der tools, die entlang gehen mit ihm.
Ja, ich bin sicher, dass cell_val ist nicht leer.
Der code war Vertreter, ich war die Sicherstellung der Filiale Zustand funktioniert vor dem schreiben der Niederlassung selbst.
Ah, die genaue Art der Sache, die entlang geht mit vba, dass ich gebunden war, zu übersehen, danke.
InformationsquelleAutor bfabry
VB/VBA-strings sind aus einem eher als null, so müssen Sie:
Habe ich auch aufgehört die
step 1
da das der default.InformationsquelleAutor paxdiablo