it-swarm.com.de

Über den Code in die Zelle einkapseln

Ist es möglich, eine saut de ligne dans une cellule encapsulée via du code VBA zu machen? (semblable à faireAlt-Enterlors de la saisie (manuelle des données)

J'ai défini la propriété Wrap Text de la cellule sur True über den Code VBA und j'y insère également des donnees über den Code VBA.

32
1355

Oui. L'équivalent VBA deAltEnterEs wird ein Caractère de Saut de Ligne verwendet:

ActiveCell.Value = "I am a " & Chr(10) & "test"

Hinweis zur endgültigen Automatisierung WrapText sur True.

preuve:

Sub test()
Dim c As Range
Set c = ActiveCell
c.WrapText = False
MsgBox "Activcell WrapText is " & c.WrapText
c.Value = "I am a " & Chr(10) & "test"
MsgBox "Activcell WrapText is " & c.WrapText
End Sub
61
brettdj

Sie können auch vbCrLf verwenden, die Chr(13) & Chr(10) entspricht.

11
Andy Brown

Ja, es gibt zwei Möglichkeiten, einen Zeilenvorschub hinzuzufügen:

  1. Verwenden Sie die vorhandene Funktion aus VBA vbCrLf in der Zeichenfolge, die Sie einen Zeilenvorschub hinzufügen möchten:

    Dim Text als Zeichenfolge

    text = "Hallo" & vbCrLf & "World!"

    Arbeitsblätter (1) .Zellen (1, 1) = Text

  2. Verwenden Sie die Funktion Chr() und übergeben Sie die ASCII - Zeichen 13 und 10, um einen Zeilenvorschub hinzuzufügen, wie unten gezeigt:

    Dim Text als Zeichenfolge

    text = "Hallo" & Chr (13) & Chr (10) & "World!"

    Arbeitsblätter (1) .Zellen (1, 1) = Text

In beiden Fällen haben Sie in Zelle (1,1) oder A1 die gleiche Ausgabe.

0
Origamer7