Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
768to772
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
768to772
768to772
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Hallo Tüfftler - Formatierte Ausgabe in UserForm

Hallo Tüfftler - Formatierte Ausgabe in UserForm
07.06.2006 06:38:43
HaJo
Hallo zusammen,
ich brauche dringend Unterstützung. Ich habe ein Tabellenblatt, welches ich formatiert in einem UserForm ausgeben möchte. Das Tabellenblatt hat 40 Spalten und 10 Zeilen. Gut wäre eine Ausgabe in Tabellenform.
Zur Zeit löse ich das Problem in dem ich die Daten Zeilenweise in einer TextBox ausgebe. Allerdings stehen diese nicht schön untereinander. Ich hätte auch gerne wie bei einer Tabelle üblich, Begrenzungslinien bei den Spalten.
Gewünschtes Ziel in auf einer UserForm in einer TextBox:
Bsp.
| A | B | C | D | ...
------------------
| 1 | 10|abc|tor| ...
| 2 | 20|abc|uwe| ...
...
Freue mich auf Euer Feedback
Grüß
HaJo

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 07:59:51
Harald
Hallo Hako,
guck mal unter Extras - zusätzliche Steuerelemente, ob Du auf Deinem Rechner das "Microsoft Data Grid Control" verfügbar hast. Wenn ja, aktiviere es und Du kannst dann dieses Steuerelement aus der Werkzeugsammlung in Deine UserForm ziehen. Anschließend stellst Du die Properties so ein, wie Du es benötigst (Anzahl Zeieln und Spalten, Überschriften etc. Dann solltest Du in der Lage sein, die Zellen des Steuerelementes wie eine Tabelle zu füllen.
Gruß Harald
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 08:20:53
Erich
Hallo Harald,
vielleicht kannst du diese Funktion - abgewandelt - gebrauchen.
Sie ist mal entstanden, um bei wer-weiss-was Tabellen darstellen zu können.
                  '  Fehlerwerte FFFF in Zellen werden mit ">>..." ausgegeben
'  Texte erscheinen linksbündig, Zahlen rechtsbündig
'     (dafür wird die Spaltenbreite künstlich um 1 erhöht)
'  Version 07.05.2005
Dim anzS%, ss%, anzZ&, begZ&, zz&, SpBr%(), Erg$, SpNam$, FWert$
Dim vor%, nac%, Tz$, fz$
Tz = "|"
fz = "_"
With rg
anzS = .Columns.Count
anzZ = .Rows.Count
begZ = .Cells(1, 1).Row - 1
ReDim SpBr(anzS)
'                                             max. Breite der Zeilennummer
SpBr(0) = Len(Format(anzZ + begZ))
'                                                   max. Breite pro Spalte
For ss = 1 To anzS
SpBr(ss) = 0
For zz = 1 To anzZ
'    Fehler erkennen (wird mit am Ende mit ">" aufgefüllt)
FWert = Fehlerwert(zz, ss)
If FWert > "" Then
If SpBr(ss) < Len(FWert) + 1 Then _
SpBr(ss) = Len(FWert) + 1
Else
If SpBr(ss) < Len(.Cells(zz, ss).Text) Then _
SpBr(ss) = Len(.Cells(zz, ss).Text)
End If
Next zz
SpBr(ss) = SpBr(ss) + 1       ' künstliche Erhöhung um 1
Next ss
'                                            Kopf und Spaltenbezeichnungen
Erg = String(SpBr(0), fz) & Tz
For ss = 1 To anzS
SpNam = SpName(.Cells(1, ss).Column)
If SpBr(ss) < Len(SpNam) Then _
SpBr(ss) = Len(SpNam)
vor = Int((SpBr(ss) - Len(SpNam)) / 2)
nac = SpBr(ss) - vor - Len(SpNam)
Erg = Erg & String(vor, fz) & SpNam & String(nac, fz) & Tz
Next ss
Erg = Erg & vbCrLf
For ss = 0 To anzS
Erg = Erg & String(SpBr(ss), "-") & Tz
Next ss
Erg = Erg & vbCrLf
For zz = 1 To anzZ
' -------------------------------------------------------- Zeilennummer
Erg = Erg & Right("    " & Format(zz + begZ), SpBr(0)) & Tz
' ---------------------------------------------------------- Zellinhalt
For ss = 1 To anzS
' Fehler erkennen (wird zwischen "<" und ">>>..." ausgegeben)
FWert = Fehlerwert(zz, ss)
If FWert <> "" Then
Erg = Erg _
& "<" & Left(FWert & String(SpBr(ss), ">"), SpBr(ss) - 1)
Else
'                         Zellinhalt (Text oder numerisch)
If Application.WorksheetFunction.IsNumber(.Cells(zz, ss)) Then
Erg = Erg _
& Right(String(SpBr(ss), " ") & .Cells(zz, ss).Text, SpBr(ss))
Else
Erg = Erg _
& Left(.Cells(zz, ss).Text & String(SpBr(ss), " "), SpBr(ss))
End If
End If
If ss < anzS Then Erg = Erg & Tz
Next ss
Erg = Erg & Tz & vbCrLf
Next zz
End With
FktTab2Txt = Left(Erg, Len(Erg) - Len(vbCrLf))
End Function
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 08:56:53
Harald
Hallo Erich,
danke, ich leg's mal bei Seite. Aktuell habe ich daran keinen Bedarf.
Gruß Harald
AW: Sorry, ich meinte: Hallo Hajo, ... (oT)
07.06.2006 08:59:32
Erich
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 10:43:48
HaJo
Hallo Erich,
vielen Dank für Deinen Lösungsvorschlag. Ich glaube der Code macht das was ich will. Allerdings habe ich einige Probleme den Code zu verstehen, da die Variablen sehr kryptisch sind und es fällt mir schwer das auf meine Applikation zu adaptieren. Kannst Du mir bitte noch etwas helfen?
1. Mein Tabellenblatt heisst: Zwischenspeicher
2. Es hat 40 Spalten und 10 Zeilen.
3. Die 1. Zeile ist ein Header
4. Meine TextBox heisst UF19_extBox1 im UserForm19
5. Toll wäre eine Funktion mit Übergabeparameter (Tabellenblattname, maxSpalten, maxZeilen)
Danke im Voraus und Gruß
HaJo
Anzeige
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 12:13:23
Erich
Hallo HaJo,
da fehlten auch noch ein paar Funktionen, die im Code verwendet werden - sorry!
Ich lad der Einfachheit halber mal eine Beispielmappe hoch:
https://www.herber.de/bbs/user/34214.xls
Die Spaltenüberschriften und Zeilennummern habe ich im Code "ausgeblendet".
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 14:11:31
HaJo
Hallo Erich,
es funktioniert mit Deinem Beispiel super. Aber meine Datendatei ist nicht ganz synchron verteilt wie deine und wenn das Textfenster voll ist bricht er um und verschiebt die Tabelle. .Anbei meine Datendatei. Wäre super wenn Du mir den Code für meine Daten anpassen könntest.
Projektnummer Projektname Gesamtprojekt Volumen Jahr Prozenverteilung Rest %
1 Projekt1 System 50000
1 Projekt1 System 50000 2006 50 50
1 Projekt1 System 50000 2007 30 20
1 Projekt1 System 50000 2008 20 0
P.S.: Wie baue ich vertikal ein Scrollbalken ein.
Danke und Gruß
HaJo
Anzeige
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 15:32:05
Erich
Hallo HaJo,
wie wärs damit:
https://www.herber.de/bbs/user/34222.xls
Deine Daten solltest du schon selbst einbringen...
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 18:36:40
HaJo
Super geht. Konnte es adaptieren.
Danke und Gruß
HaJo
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 10:32:15
HaJo
Hallo Harald,
deine Lösung hört sich interessant an. Leider habe ich ein englisches Excel. Wo finde ich die besagte Erweiterung ?
Gruß
HaJo
AW: Hallo Tüfftler - Formatierte Ausgabe in UserFo
07.06.2006 10:57:52
Harald
Hallo Hajo,
ich habe die deutsche Version, da liegt es unter C:\WINNT\system32\MSDATGRD.OCX
Gruß Harald

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige