Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1160to1164
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
Inhaltsverzeichnis

Koordinaten

Koordinaten
Holger
Hallo,
tolles Forum, auch wenn ich nur ein Bruchteil verstehe.
Deswegen wollte ich fragen, ob man das folgende Szenario mit VBA automatisieren kann:
In einer Tabelle sind 2 Felder, in die man jeweils einen Wert eingibt. Der erste Wert steht für die Anzahl Spalten, der zweite Wert für die Anzahl der Zeilen.
Wenn ich jetzt z.B. die Werte 10 und 25 eingebe, soll mit VBA der Bereich, immer ausgehend von Zelle K2, über 10 Spalten und 25 Reihen umrandet und mit Weißer Farbe gefüllt werden.
Das Ganze soll immer automatisch ablaufen, wenn der zweite Wert eingegeben wurde.
Ist so etwas machbar?
Hab mal eine Beispieldatei gemacht https://www.herber.de/bbs/user/70064.xls
Vielen Dank!
Grüße aus Hessen
Holger

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Berecihsformatierung mit bestimmter Größe
15.06.2010 12:24:58
NoNet
Hallo Holger,
klicke das Tabellenblatt im Blattregister unten per rechte Maustaste an, wähle "Code anzeigen..." aus und kopiere den folgenden VBA-Code in das nun geöffnete VBA-Fenster :
Private Sub Worksheet_Change(ByVal Target As Range)
If [A1] > 0 And [A4] > 0 Then
'Hier wird zuerst der alte Rahmen gelöscht :
With [K2].Resize(100, 100)
.Borders.LineStyle = xlNone
.Interior.ColorIndex = xlNone
End With
With [K2].Resize(Application.Min(80, [A4].Value), Application.Min(90, [A1].Value))
.Borders(xlEdgeLeft).LineStyle = xlContinuous
.Borders(xlEdgeTop).LineStyle = xlContinuous
.Borders(xlEdgeRight).LineStyle = xlContinuous
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Interior.Color = vbWhite
End With
End If
End Sub
Wechsle nun wieder zurück in das Tabellenblatt und probiere es aus....
Gruß, NoNet
Anzeige
Vielen Dank!
15.06.2010 12:47:33
Holger
Jetzt kann ich mir bei meiner Wohnungssuche die Umrisse schneller erstellen!
Grüße aus Hessen
Holger
da war NoNet schneller ...
15.06.2010 12:33:09
Rudi
Hallo,
trotzdem:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1,A4")) Is Nothing And Application.Count(Range("A1,A4")) = 2  _
Then
With Cells
.Borders.LineStyle = xlNone
.Interior.ColorIndex = xlNone
End With
With Range("K2").Resize(Range("A1"), Range("A4"))
.Interior.Color = RGB(255, 255, 255)
.BorderAround LineStyle:=xlContinuous, Weight:=xlThin
End With
End If
End Sub

Gruß
Rudi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige