Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBAHTML auf 64bit-Office
#31
Alles funktioniert noch nicht. Die Profile muss ich noch anpassen. Da ist noch einiges zu tun.
Antworten Top
#32
"OPENFILENAME" scheint in der 64-bit-Version nicht zu laufen. Es erscheint weder der Dialog noch eine Fehlermeldung. Egal in welcher Datei der Code steht. Der Code rennt durch (auch die vielen Beispielcodes aus dem Internet). Kennt jemand dieses Problem und eine Lösung?
Antworten Top
#33
Hallo Rene,

der OpenFileName funktioniert auch unter 64Bit.

Hatte erst vor kurzem hier ein Beispiel gepostet.
https://www.clever-excel-forum.de/Thread...#pid220868

Aber es ist ein Detail zu beachten, für dessen Herausfindung ich damals auch länger gebraucht hatte.

Die StruktureSize-Angabe muss mit LENB() angegeben werden.
 .lStructSize = LenB(SpeichernAls)

Habe das jetzt in Deinem Tool nicht getestet, aber probiere es mal aus.

Viele Grüße
Karl-Heinz
Antworten Top
#34
Danke! Jetzt erscheint der Dialog. Aber jetzt kracht es bei "UTFOutput", keine Ahnung weshalb.
Antworten Top
#35
Versuche es mit:

Code:
Private Declare PtrSafe Function WideCharToMultiByte Lib "kernel32" ( _
        ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As LongPtr, _
        ByVal cchWideChar As Long, ByVal lpMultiByteStr As String, ByVal cchMultiByte As Long, _
        ByVal lpDefaultChar As String, ByVal lpUsedDefaultChar As LongPtr) As Long

Das passt zu Deiner Sub.
Obwohl in der Wn64-Declareliste ByVal lpWideCharStr As String steht, ist für Deine Sub m.E. ByVal lpWideCharStr As LongPtr angesagt.

viele Grüße
Karl-Heinz
Antworten Top
#36
Danke! Das probiere ich dann später aus. Aber typisch MS, nicht mal eine vernünftige Fehlermeldung. Blush
Antworten Top
#37
Eben getestet.Stürzt immernoch ab.
Antworten Top
#38
Ich hab ein meiner Bastelkiste, eine ähnliche, aber leicht abweichende Variante.

Kannst Du ja mal testen, ob die bei Dir durchläuft und auch das gewünschte Ergebnis bringt.

Ansonsten bin ich jetzt nicht der Fachmann für diese Funktion.

Code:

Private Declare PtrSafe Function WideCharToMultiByte Lib "kernel32" ( _
        ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As LongPtr, _
        ByVal cchWideChar As Long, ByVal lpMultiByteStr As String, ByVal cchMultiByte As Long, _
        ByVal lpDefaultChar As String, ByVal lpUsedDefaultChar As LongPtr) As Long

Sub UTF8Output(Datei As String, T As String, Optional BOM As Boolean = False)
        
 Dim tmp As String, l As Long, FF As Integer
 Dim tt As String
            
 If Len(Datei) = 0 Or Len(T) = 0 Then Exit Sub
  
 l = WideCharToMultiByte(65001, 0, StrPtr(T), -1, 0, 0, 0, 0) 'Anzahl Zeichen ermitteln
 tmp = Space$(l)
    
 WideCharToMultiByte 65001, 0, StrPtr(T), -1, tmp, l, 0, 0
 If Dir$(Datei) <> "" Then Kill Datei
 FF = FreeFile
 Open Datei For Binary As #FF
 Put #FF, , tmp
 Close #FF
    
End Sub

Sub Test()
 Dim T As String
 
 T = "düses ist än nöier Teßt"
 UTF8Output "C:\Users\voltm\Desktop\UTFTest.txt", T
End Sub

_________
viele Grüße
Karl-Heinz
[-] Folgende(r) 1 Nutzer sagt Danke an volti für diesen Beitrag:
  • mumpel
Antworten Top
#39
Das funktioniert. Allerdings wird ein "White Space" eingefügt, welches in Notepad++ als "Null" mit schwarzem Hintergrund angezeigt wird. Merkwürdiger Weise hat mein Code in einer separaten Datei funktioniert, allerdings mit lauter "Null" mit schwarzem Hintergrund, also vollkommen falscher Inhalt.

Und damit hat sich auch das FTP-Problem gelöst (musste ja schiefgehen wenn keine Datei vorhanden ist :blus: ).
Antworten Top
#40
Die Word-Version habe ich eben auch angepasst. Funktioniert bei mir. https://www.rholtz-office.de/counters/ge...php?id=305
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste