Hahaha das nächste Mal kannst du mir noch mit dem Kochlöffel eins auf den Kopf hauen macht ja Sinn, wenn ich noch weiter Zellen ansprechen muss Danke dir Ralf.
Mal ein Tipp! Wenn Du (noch) unsicher bist, solltest Du den Umweg über eine Objektvariable gehen, die Du per Set = zuweisen musst.
Code:
Dim wks As Worksheet Set wks = Worksheets("Tabelle1")
Das hat den großen Vorteil, dass die Intellisense funktioniert! Nach Eingabe von wks.c erscheint eine Listbox mit Methoden und Eigenschaften des Objekts:
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:1 Nutzer sagt Danke an RPP63 für diesen Beitrag 28 • Primo Centurio
03.07.2022, 11:07 (Dieser Beitrag wurde zuletzt bearbeitet: 03.07.2022, 11:08 von Primo Centurio.)
Evt kannst du mir noch bei was ähnlichem helfen.
Gibt es ne Möglichkeit bei VBA den Inhalt der Zelle auf die Breite der Zelle zu Kürzen?
Beispiel: Wenn "Amadeus Mozart" der Inhalt ist wird in der Ansicht nur "Amadeus Moz" angezeigt, kann ich über ein Befehl sagen, dass er den Inhalt von "Amadeus Mozart" auf "Amadeus Moz" ändert? Die Anzahl der Zeichen ist von Zelle zu Zelle unterschiedlich. Bi Neugierig ob das geht.
Lg Primo
(03.07.2022, 11:05)RPP63 schrieb: Mal ein Tipp! Wenn Du (noch) unsicher bist, solltest Du den Umweg über eine Objektvariable gehen, die Du per Set = zuweisen musst.
Code:
Dim wks As Worksheet Set wks = Worksheets("Tabelle1")
Das hat den großen Vorteil, dass die Intellisense funktioniert! Nach Eingabe von wks.c erscheint eine Listbox mit Methoden und Eigenschaften des Objekts:
Option Explicit Public Sub Main_1() Dim strTMP As String strTMP = "Donaudampfschifffahrtsgesellschaftskapitänspatent" If Len(strTMP) > 10 Then strTMP = Left(strTMP, 10) Debug.Print strTMP End Sub Public Sub Main_2() Dim strTMP As String strTMP = "Amadeus Mozart" If Len(strTMP) > 11 Then strTMP = Left(strTMP, 11) Debug.Print strTMP End Sub Public Sub Main_3() Dim strTMP As String * 11 strTMP = "Amadeus Mozart" Debug.Print strTMP End Sub
Allerdings haben diese Varianten ein Problem - die Zahl 10 bzw. 11.
Das ist von vielen Faktoren abhängig (Schriftgröße, Schriftart und, und und...) siehe hier...
Folgende(r) 1 Nutzer sagt Danke an Gast für diesen Beitrag:1 Nutzer sagt Danke an Gast für diesen Beitrag 28 • Primo Centurio
Option Explicit Public Sub Main_1() Dim strTMP As String strTMP = "Donaudampfschifffahrtsgesellschaftskapitänspatent" If Len(strTMP) > 10 Then strTMP = Left(strTMP, 10) Debug.Print strTMP End Sub Public Sub Main_2() Dim strTMP As String strTMP = "Amadeus Mozart" If Len(strTMP) > 11 Then strTMP = Left(strTMP, 11) Debug.Print strTMP End Sub Public Sub Main_3() Dim strTMP As String * 11 strTMP = "Amadeus Mozart" Debug.Print strTMP End Sub
Allerdings haben diese Varianten ein Problem - die Zahl 10 bzw. 11.
Das ist von vielen Faktoren abhängig (Schriftgröße, Schriftart und, und und...) siehe hier...
Danke Case, werde mich in den nächsten Tagen mal damit auseinander setzen :)