vba problem
10.02.2024 17:34:58
Andreas Schmitt
ich habe folgendes problem ich möchte diesen vba code der eiwandfrei funktioniert so umschreiben ,dass er in tabelle 3 einer excelmappe
in allen zellen die mit der maus markiert wurden die formel löscht und gegen deren ergebniss ersetzt, und davor eine msgbox mit ja nein cancel bringt. bitte um schnelle antwort.
MfG Andreas
Private Sub Workbook_Open()
If Tabelle7.Range("B2").Value > "" Then
Dim Antwort As Integer
Antwort = MsgBox("Möchtest du das Ergebnis der Formel speichern ?", vbYesNoCancel + vbQuestion + vbDefaultButton2, "Frage")
If Antwort = vbYes Then
GoTo 1:
Else
GoTo 2:
End If
1:
anfang: Dim rngBereich As Range, iCalc As Integer
'Bereich wo sich die Formeln befinden, hier Spalte 1
Set rngBereich = Columns(4)
On Error GoTo KeineFormeln:
'sind keine Formeln vorhanden, kommt es zum Fehler
Set rngBereich = rngBereich.SpecialCells(xlCellTypeFormulas)
On Error GoTo anfang:
With Application
iCalc = .Calculation
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
' Formel wird durch festen Wert ersetzt,
' wenn diese als Ergebnis nicht leer liefert.
' Dies kann auch umgestellt oder erweitert werden
For Each rngBereich In rngBereich
If rngBereich > "" Then rngBereich.Value = rngBereich.Value
Next rngBereich
.Calculation = iCalc
.ScreenUpdating = True
.EnableEvents = True
End With
KeineFormeln:
End If
2:
End Sub