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

CommandButton über VBA und damit Spalten ausblende

CommandButton über VBA und damit Spalten ausblende
29.08.2007 20:24:00
Sebastian
Halli hallo,
erstmal ein dickes lob an das super forum, hier wird einem wirklich geholfen. Nun zu meinem Problem.
Ich möchte über ein UserForm einige Tabellenblätter erstellen. Bei einem Tabellenblatt soll noch eine CommandBox erstellt werden. Das erstellen habe ich mal über folgendes gelöst(Makro aufgenommen):

Public Sub addButton()
ActiveSheet.Range("A2").Select
Dim btn As Button
Dim dWidth As Double, dHeight As Double
With Selection
dWidth = .Cells(.Cells.Count).Left - _
.Cells(1).Left .Cells(.Cells.Count).Width
dHeight = .Cells(.Cells.Count).Top - _
.Cells(1).Top .Cells(.Cells.Count).RowHeight
Set btn = ActiveSheet.Buttons.Add(.Cells(1).Left, _
.Cells(1).Top, dWidth, dHeight)
End With
btn.Caption = "Aufrufen"
btn.OnAction = "Tabelle12.Meldung1"
End Sub


Dies funktioniert soweit recht gut, doch jetzt kommt mein eigentliches Problem. Die Prozedur Meldung1, soll die Spalten G - J auf knopfdruck ausblenden. Ein weiteres Problem ist dass ich einige Zellen in diesem Arbeitsblatt verbunden habe, und der Zellenverbund geht von D - OpenEnd(je nachdem welche einstellungen man in der Userform angegeben hat)
Das Ein/Ausblenden möchte ich hiermit machen:
ActiveSheet.Unprotect
If Columns("G").Hidden = True Then
Columns("G").Hidden = False
Columns("H").Hidden = False
Columns("I").Hidden = False
Columns("J").Hidden = False
Else
Columns("G").Hidden = True
Columns("H").Hidden = True
Columns("I").Hidden = True
Columns("J").Hidden = True
End If
Nun nach meiner Vorstellung sollte das recht gut klappen, zumal das Ein und Ausblenden funktioniert, wenn ich es direkt einem CommandButton zuweise. Aber über vba passiert entweder nichts, oder es kommt die Fehlermeldung "400".
Was mir noch aufgefallen ist, wenn ich das script über vba dem button zuweise, dann werden nicht nur die Spalten G-J ausgeblendet, sondern die kompletten Spalten meiner verbundenen Zelle, die z.b. von D - AZ geht. Nun endlich meine Frage, habe ich den richtigen ansatz? oder mache ich da etwas grundlegendes falsch?

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CommandButton über VBA und damit Spalten ausblende
29.08.2007 20:31:05
Fred
Hi,
zum 1034 zigsten mal, verbundene Zellen haben nichts in einer Tabelle zu suchen.
mfg Fred

AW: CommandButton über VBA und damit Spalten ausbl
29.08.2007 20:49:27
Sebastian
wieso denn nicht?

AW: CommandButton über VBA und damit Spalten ausbl
29.08.2007 21:15:59
Gerd
Hallo Sebastian,
die MergeCells bringen die Zelladdressen "durcheinander".
Probiere deinen Code in eine kopierten Datei, in der Du die Zellen noch "entbindest" .
Zu diesem Thema steht hier im Archiv jede Menge, in der VBA-Hilfe evtl. ebenfalls etwas.
Bei deiner zweiten Fragestellung empfehle ich, eine Mustertabelle mit Steuerelement anzulegen
u. dieses Sheet bei Bedarf zu kopiereren.
Gruß Gerd

AW: CommandButton über VBA und damit Spalten ausbl
29.08.2007 21:17:45
Fred
Hi,
du hast es doch selbst gemekt, sie machen ubgleich mehr Probleme, als sie Nutzen bringen.
In fast allen Fällen erreichst du den selben optischen Effekt mit "Über Auswahl zentrieren".
mfg Fred

Anzeige
AW: CommandButton über VBA und damit Spalten ausbl
30.08.2007 06:43:28
Sebastian
hmm... ok dann vielen dank für die antworten, dann werde ich mal einiges umstrukturieren müssen

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige