Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Daten die untereinander sind - einzeilig

Betrifft: Daten die untereinander sind - einzeilig von: Mani
Geschrieben am: 14.08.2020 16:24:00

Hallo, ich habe eine quicklige Aufgabe.


Ich Habe eine Userform und einen Button, den ich - Einzeilig nennen möchte -

Nun möchte ich folgende Daten die in dieser Form sind:


XXXXXX

YYYYYY

AAAAAA


markieren und mit ctrl. C in den Speicher geben. Wenn ich den Button drücke soll mir am Bildschirm diese Daten in einer msgbox wie folgt dargestellt werden:


XXXXXX;YYYYYY;AAAAAA


Wie könnte ich das realisieren?

Das Problem das ich habe ist, die Daten aus dem Speicher zu lesen


Für eine Hilfe wäre ich super dankbar!!

Betrifft: AW: Daten die untereinander sind - einzeilig
von: UweD
Geschrieben am: 14.08.2020 16:28:30

Hi

markieren reicht schon...


MsgBox Join(WorksheetFunction.Transpose(Selection), ";")


LG UweD

Betrifft: AW: Daten die untereinander sind - einzeilig
von: Mani
Geschrieben am: 14.08.2020 17:42:05

Danke für die Antworten, aber die DAten ziehe ich z.b. von einer text.txt Datei. Also aus einem Windows Editor.
Daher bekomme ich Laufzeitfehler 13 - Typen unverträglich

Also im Editor sind

xxxxx
yyyyy
BBBBB

markieren und ctrl-C - ist dann im zwischenspeicher und dann soll mit dem Button in Userforms
der Zwischenspeicher ausgelesen werden und auf dem Bildschirm mit msgbox folgendes ausgegeben werden:

xxxxx;yyyyy;BBBBB

Das ist echt knifflig das aus dem zwischenspeicher auszulesen.

Wer kann das -

wäre echt super spitze wenn mir jemand helfen könnte

Betrifft: AW: Daten die untereinander sind - einzeilig
von: ralf_b
Geschrieben am: 14.08.2020 18:19:14

du kannst die textdatei mit vba einlesen und dir die Zeileninhalte quasi herausnehmen. dazu gibts zig Beispiele. Brauchst gar nicht mal den Editor öffnen. Es sei denn das stehen noch andere ungewollte Texte in der Datei.

Alternativ auf Basis deiner Schilderung hier eine kleine Prozedur in Anlehnung an dieses Beispiel https://www.herber.de/forum/archiv/1420to1424/1421594_Windows_Zwischenspeicher_Inhalt_pruefen.html
Private Sub CommandButton1_Click()
 Dim objClipBoard As Object
 Set objClipBoard = CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
 Call objClipBoard.GetFromClipboard
  
 MsgBox Join(Split(objClipBoard.GetText, vbCrLf), ";")
  
End Sub


Betrifft: AW: Daten die untereinander sind - einzeilig
von: Mani
Geschrieben am: 14.08.2020 18:57:59

Danke für die Antwort, aber so funktioniert es nicht, aber ich habe die wichtige Zeile um ; zu erzeugen und so konnte ich mir selber was basteln, das funktioniert nun

Danke für die Hilfe

Ein Weissbier auf Dich!

Betrifft: AW: Daten die untereinander sind - einzeilig
von: ok, danke für die rückmeldung
Geschrieben am: 14.08.2020 20:37:30

warum mein Code bei dir nicht funktioniert weis ich nicht, aber ich habe es genau so nahcgestellt wie du es geschrieben hast. Eine Userform mit Button,der eine Messagebox ausgibt wenn man vorher einen Text im Editor markiert und kopiert hat.

Betrifft: AW: Daten die untereinander sind - einzeilig
von: ralf_b
Geschrieben am: 14.08.2020 16:32:01

wenn du die daten in der userform hast, dann sind sie in textboxen oder dergleichen.
von dort kann man sie direkt ohne den Zwischenspeicher nutzen.