Anzeige
Archiv - Navigation
788to792
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
788to792
788to792
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Dank an "fcs", und noch ne Frage

Dank an "fcs", und noch ne Frage
03.08.2006 18:27:13
Uwe
Hallo alle miteinander,
muß erst mal mich bei Franz bedanken für den letzten Eintrag. Durch Urlaub ist der Beitrag hier Forum entfernt worden.
Der Stand war hier als letztes www.herber.de/forum/archiv/780to784/t781575.htm
Der letzte Eintrag von Franz funktioniert soweit prima.
Frage: Wie kann ich die Textbausteine so weiter geben wie ich sie angelegt habe, also mit Zellverbindung und Zeilenumbruch. Bis jetzt wird beim einfügen die Zelle nach unten verlängert. Das sieht natürlich doof aus :-)
Vorab schon mal vielen Dank.
Gruß Uwe

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dank an "fcs", und noch ne Frage
04.08.2006 00:46:10
fcs
Hallo Uwe,
verbundene Zellen sind leider eine der schlimmsten Funktionen die MS in Excel eingeführt hat, wenn es darum geht Kopierfunktionen und auch so manche andere Funktion auszuführen.
Also: am besten verbundene Zellen in Excel-Tabellen vermeiden.
Wenn es darum geht Text in einer Zeile über mehrere Spalten zu zentrieren, dann ist das Format Textausrichtung horizontal "Zentriert über Spalten" in 99,9999% der Fälle die bessere Lösung
Wenn du in dem Blatt mit den Textbausteinen und in der Zieltabelle so in der Zeile benachbarte Zellen formatierst, dann funktioniert auch das Kopieren, wobei der Text immer in die linke Zelle des Zellenblocks eingetragen wird.
Du kannst abhängig von dem gewählten Textbaustein auch einen Zellbereich in die Zieltabelle kopieren. Folgende Anweisung kopiert z.B. die Zelle mit dem Textinhalt plus die beiden rechten Nachbarzellen in die Zieltabelle, wenn dies für die Formatierung notwendig sein sollte.

Case "cbText01"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A1:C1").Copy wb.Sheets("Text").Cells(5, "A")

Gruß
Franz
Anzeige
AW: noch passt es nicht ganz
04.08.2006 23:18:02
Uwe
Hallo Franz,
habe mal so umgebaut...

Private Sub CommandButton1_Click() 'Textbausteine in Tabelle Text kopieren
Dim wb As Workbook
Set wb = ActiveWorkbook
' oder falls Texbausteine in andere Mappe eingefügt werden sollen
' Set wb = Workbooks("Testmappe.xls")
'gewählte Textbausteine kopieren
For I = 1 To Boxen
If Me.Controls("cbText" & Format(I, "00")).Value = True Then
Select Case "cbText" & Format(I, "00")
Case "cbText01"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A1:G1").Copy wb.Sheets("Text").Cells(1, "A")
Case "cbText02"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A2:G2").Copy wb.Sheets("Text").Cells(2, "A")
Case "cbText03"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A3:G3").Copy wb.Sheets("Text").Cells(3, "A")
Case "cbText04"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A4:G7").Copy wb.Sheets("Text").Cells(4, "A")
Case Else
'do nothing
End Select
Zeile = Zeile + 1
End If
Next I
Application.CutCopyMode = False
Unload Me
UserForm1.Show
End Sub


Private Sub UserForm_Initialize()
'hiermit wird die userform auf vollfenster gebracht
With UserForm15
.Height = Application.Height
.Width = Application.Width
End With
Dim I As Long
Set wksBaustein = ActiveWorkbook.Sheets("Bausteine")
Zeile1 = 1 'Zeile des 1. Textbausteinns
Boxen = 4 'Anzahl der Checkboxen
'Übernahme der Textbausteine auf die Lables im Formsheet
For I = 1 To Boxen
Me.Controls("lblText" & Format(I, "00")).Caption = wksBaustein.Cells(Zeile1 + I - 1, "A")
Next I
End Sub

in Bausteine hab ich mal testweise von A1 bis A10 jeweils bis G gefüllt also von A1-G1;A2-G2 u.s.w.
Folgendes fällt jetzt auf:
in lblText04 sieht man nur die erste zeile in der Userform.
In Text steht jetzt in A1 auch korrekt der Inhalt von Bausteine A1.
Jedoch in Text A2 steht der Inhalt aus Bausteine A3,es sollte aber A2 drin stehen.
In Text A3=A5 Bausteine
A4=A7
A5=A8
A6=A9
A7=A10
es sollte aber so aussehen
TextA1=A1 Bausteine
A2=A2
A3=A3
A4=A4-A7
hoffe es ist einigermaßen erklärt.
Vorab vielen Dank.
Gruß Uwe
Anzeige
AW: noch passt es nicht ganz
05.08.2006 12:03:59
fcs
Hallo Uwe,
Problem: Korrekte Übertragung der Textbausteine
Hierzu das Makro wie folgt korrigieren. Der in Range angegeben Bereich bezieht sich bei der hier verwendeten Syntax imner relativ zu der links von .Range angegeben Zelle. Dabei ist A1 die Zelle selber.

Private Sub CommandButton1_Click() 'Textbausteine in Tabelle Text kopieren
Dim wb As Workbook
Set wb = ActiveWorkbook
' oder falls Texbausteine in andere Mappe eingefügt werden sollen
' Set wb = Workbooks("Testmappe.xls")
'gewählte Textbausteine kopieren
For I = 1 To Boxen
If Me.Controls("cbText" & Format(I, "00")).Value = True Then
Select Case "cbText" & Format(I, "00")
Case "cbText01"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A1:G1").Copy wb.Sheets("Text").Cells(1, "A")
Case "cbText02"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A1:G1").Copy wb.Sheets("Text").Cells(2, "A")
Case "cbText03"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A1:G1").Copy wb.Sheets("Text").Cells(3, "A")
Case "cbText04"
wksBaustein.Cells(Zeile1 + I - 1, "A").Range("A1:G4").Copy wb.Sheets("Text").Cells(4, "A")
Case Else
'do nothing
End Select
Zeile = Zeile + 1
End If
Next I
Application.CutCopyMode = False
Unload Me
UserForm1.Show
End Sub

Den für die Checkbox cbText04 gewählten Kopiervorgang mit dem Kopieren von Zellen aus mehreren Zeilen kannst du nur mit dem letzten Baustein machen. Andernfalls gibt es Probleme, da bei der gewählten Programmierung mit der For-Next-Schleife jeder Checkbox eine Zeile in der Bausteintabelle zugeordnet ist.
Problem: Nur eine Textzeile bei lblText04 für cbText04
In der Initialisierungsprozedur des Formulars wird in der For-Next-Schleife jedem Textlabel der Inhalt einer Zelle der Textbausteintabelle zugewiesen.
Wenn du davon abweichen willst, dann muss mit If-Then- oder Select Case-Anweisungen Ausnahmeregeln einführen. Dann hast du aber bald den Punkt erreicht, wo du für jedes Textlabel individuell festlegts wo es seinen Text herbekommt. Auf den Komfort der For-Next-Schleife zu Zuordnung der Labeltexte kannst du dann ganz verzichten bzw. die Schleifen müssen anders aufgebaut werden, so dass der Zähler für die Labels und der Zähler für die Zeilen aus denen die Texte entnommen werden unabhängig von einander hochgezählt werden.
Gruß
Franz
gruss Franz
Anzeige
AW: noch passt es nicht ganz
07.08.2006 22:40:37
Uwe
Hallo Franz,
jetzt bist du Armer schon an zwei Baustellen bei mir dran.
Also bei dem Fall bin ich mir nicht mehr sicher ob das der richtige Weg ist.
Bin aber noch am probieren.
Frage ist, ob man einen anderen Weg wählen sollte.
Mit meinem Laienhaften denke ich da an Word was man vielleicht irgendwie einbetten kann und darüber die Texte einfügt.
Gruß Uwe

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige