Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1280to1284
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

Spaltenbreite automatisch einstellen

Spaltenbreite automatisch einstellen
17.10.2012 11:21:07
Peter
Hallo Leute, ich habe dieses MAkro aufgenommen und nun in meinen Code verschoben.
Irgendetwas funzt net.
'Spalte A;B;C sollen 3,57 also 30 Pixel breit sein
'Spalte D soll6,43 also 50 Pixel breit sein
ActiveCell.Columns("A:A").EntireColumn.ColumnWidth = 3.57
ActiveCell.Offset(0, 1).Columns("A:A").EntireColumn.ColumnWidth = 3.57
ActiveCell.Offset(0, 2).Columns("A:A").EntireColumn.ColumnWidth = 3.57
ActiveCell.Offset(0, 3).Columns("A:A").EntireColumn.ColumnWidth = 6.43
Beim ersten ausführen stellt er 30;80;80;80 ein (Pixel)
bei jedem weiteren 30;30;50;80
Versteh das net.
Danke für eure Hilfe
Gruß Peter

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

Betreff
Datum
Anwender
Anzeige
kann ich nicht bestätigen ... Breite bleibt gleich
17.10.2012 11:39:45
Matthias
Hallo Peter
Habs gerade getestet(XL2007 und auch mit XL2000). Klappt in beiden Versionen ohne Probleme.
Du könntest Deine Mappe zeigen, gibts da evtl. noch mehr relevanten Prgr.Code?
Gruß Matthias

AW: kann ich nicht bestätigen ... Breite bleibt gleich
17.10.2012 11:47:17
Peter
Hallo Matthias,
hier mein kompletter Code, habe aber schon ein wenig an der Spaltenbreite gebastelt... aber ändert sich nix
Sub neuer_Auftrag()
' neuer_Auftrag Makro
' fügt im Tabellenblatt Berechnung eine neue Auftragtabelle hinzu
'Zelle A1:A4 sollen miteinand3er verbunden werden
ActiveCell.Range("A1:D1").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Merge
'Spalte A;B;C sollen 3,57 also 30 Pixel breit sein
ActiveCell.Columns("A:A").EntireColumn.ColumnWidth = 3.57
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Columns("A:A").EntireColumn.ColumnWidth = 3.57
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Columns("A:A").EntireColumn.ColumnWidth = 3.57
ActiveCell.Offset(0, 1).Range("A1").Select
'Spalte D soll6,43 also 50 Pixel breit sein
ActiveCell.Columns("A:A").EntireColumn.ColumnWidth = 3.57
ActiveCell.Offset(0, -3).Range("A1").Select
'In Zelle A2 steht BU
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.Value = "BU"
'In Zelle B2 Steht BI
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = "BI"
'In Zelle C2 sthet GR
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = "GR"
'In Zelle D2 steht Sonder
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = "Sonder"
ActiveCell.Offset(-1, -3).Range("A1").Select
'Bereich A1 bis D45 soll komplett schwarzen Rahmen erhalten
'Bereich A1 bis D45 soll außen einen dicken Rahmen erhalten
Selection.Merge
ActiveCell.Range("A1:D45").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlMedium
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlMedium
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlMedium
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlMedium
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
ActiveCell.Offset(4, 1).Range("A1").Select
End Sub

Vielen Dank

Anzeige
AW: kann ich nicht bestätigen ... Breite bleibt gleich
17.10.2012 11:50:08
Peter
Hab grad nen kleinen Fehler endeckt aber der scheint net so wichtig zu sein...
'Spalte D soll6,43 also 50 Pixel breit sein
ActiveCell.Columns("A:A").EntireColumn.ColumnWidth = 3.57
Aber wenn das schon bei Spalte B net funzt!!!

Nachfrage
17.10.2012 12:34:13
Matthias
Hallo
Dir ist aber bewusst, das Du damit:

ActiveCell.Offset(4, 1).Range("A1").Select

immer 4 Zeilen tiefer rutschst ?
Ist das so gewollt?
Gruß Matthias

65 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige