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

VBA: in verbundene Zellen springen

VBA: in verbundene Zellen springen
14.06.2007 15:48:41
MikelF:)
Hallo,
ich suche eine TEIL-Formel die (ausgelöst per Symbol auf der Symbolleiste!) automatisch (hintereinander) auf die verbundene Zelle springt ...damit (im 2. Teil) die Zeilenhöhe bei verbundenen Zellen angepasst werden kann!
Die VBA-Formel des 2. Teils (habe ich aus diesem Forum!) lautet:

Sub AutoFitMergedCellRowHeight()
'passt die Zeilenhöhe bei verbundenen Zellen automatisch an
'von Hans Herber
Dim CurrentRowHeight As Single, MergedCellRgWidth As Single
Dim CurrCell As Range
Dim ActiveCellWidth As Single, PossNewRowHeight As Single
Dim iX As Integer
If ActiveCell.MergeCells Then
With ActiveCell.MergeArea
If .Rows.Count = 1 And .WrapText = True Then
Application.ScreenUpdating = False
CurrentRowHeight = .RowHeight
ActiveCellWidth = ActiveCell.ColumnWidth
For Each CurrCell In Selection
MergedCellRgWidth = CurrCell.ColumnWidth + _
MergedCellRgWidth
iX = iX + 1
Next
MergedCellRgWidth = MergedCellRgWidth + (iX - 1) * 0.71
.MergeCells = False
.Cells(1).ColumnWidth = MergedCellRgWidth
.EntireRow.AutoFit
PossNewRowHeight = .RowHeight
.Cells(1).ColumnWidth = ActiveCellWidth
.MergeCells = True
.RowHeight = IIf(CurrentRowHeight > PossNewRowHeight, _
CurrentRowHeight, PossNewRowHeight)
End If
End With
End If
End Sub


Vielleicht wißt ihr eine Lösung?
Grüße
MikelF:)

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: in verbundene Zellen springen
17.06.2007 14:14:59
fcs
Hallo MikelF,
hier ein Vorschlag zur Lösung des 1. Teils deines Problems.
Die Prozedur durchsucht das aktive Blatt zeilenweise nach verbundenen Zellen und ruft dann jeweils die 2. Prozedur zur Einstellung der Zeilenhöhe auf. Damit die Funktionalität immer vorhanden ist muss du beide Prozeduren in ein Modul deiner persönlichen Makroarbeitsmappe kopieren. Danach dann eine Symbolleiste anpassen und das Makro FindenMergedCells zuweisen.
Gruß
Franz

Sub FindenMergedCells()
'Verbundene Zelle finden und Zeilenhöhe anpassen
Dim wks As Worksheet, lngZeile&, iSplate%
Set wks = ActiveSheet
For lngZeile = wks.UsedRange.Row To wks.UsedRange.Row _
+ wks.UsedRange.Rows.Count - 1
For ispalte = wks.UsedRange.Column To wks.UsedRange.Column _
+ wks.UsedRange.Columns.Count - 1
If wks.Cells(lngZeile, ispalte).MergeCells = True Then
wks.Cells(lngZeile, ispalte).Select
ispaltenverbunden = ActiveCell.MergeArea.Columns.Count
Call AutoFitMergedCellRowHeight
ispalte = ispalte + ispaltenverbunden - 1
End If
Next
Next
End Sub


Anzeige
Danke - klappt!!!
18.06.2007 15:13:00
MikelF:)
Danke Franz,
s'hat klappt!!!
Grüße
MikelF:)

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige