Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
27.05.2024 15:50:22 |
Ursula |
|
|
|
27.05.2024 15:59:04 |
ralf_b |
|
|
|
27.05.2024 16:21:18 |
Ursula |
|
|
|
27.05.2024 18:36:49 |
ralf_b |
|
|
|
27.05.2024 21:00:44 |
Ursula |
|
|
|
28.05.2024 02:48:21 |
ralf_b |
|
|
|
28.05.2024 07:23:06 |
Ursula |
|
|
Formelteil in mehreren Tabellenblätter ersetzen. |
28.05.2024 08:23:31 |
ralf_b |
|
|
|
28.05.2024 13:25:27 |
Ursula |
|
|
|
28.05.2024 16:24:18 |
ralf_b |
|
|
Von:
ralf_b |
Datum:
28.05.2024 08:23:31 |
Views:
142 |
Rating:
|
Antwort:
|
Thema:
Formelteil in mehreren Tabellenblätter ersetzen. |
Hier ein Versuch. kopiere den Code in das Codemodule des betreffenden Blattes.
Die entsprechenden Ersetzungen nimmst du noch vor. Siehe Kommentare.
Keine Garantie, Nicht an Originaldateien testen.
Private Sub Worksheet_Change(ByVal Target As Range)
'den zu überwachenden Bereich Range(xxxx) anpassen
If Not Intersect(Target, Range("E5:E7")) Is Nothing Then
Dim rng As Range, sh As Worksheet
Dim sErsetzung$ : sErsetzung ="Hier dein pfad eingeben"
On Error Resume Next
Set rng = Cells.SpecialCells(xlCellTypeFormulas, 16) 'hier werden alle zellen mit fehler erfasst
On Error GoTo 0
If Not rng Is Nothing Then
'reines wiederherstellen
With Application
.ScreenUpdating = False: .EnableEvents = False
Call Fehlerkorr(rng, sErsetzung)
.ScreenUpdating = True: .EnableEvents = True
End With
'Daten loggen
' LOGDATA rng
'EMAILVERSENDEN mit logdaten
' Call Email("deine emailadresse")
'meldung an user ausgeben
' MsgBox "Ein Fehler ist aufgetreten: Informieren Sie Frau sowieso ", vbCritical, "Fehler"
End If
End If
End Sub
Sub Fehlerkorr(rng As Range, sErsetzung as String)
Dim cel As Range
Dim are As Range
Dim str$
Dim ret: ret = Application.ErrorCheckingOptions.BackgroundChecking
Application.ErrorCheckingOptions.BackgroundChecking = False
Application.Calculation = xlCalculationManual
For Each are In rng.areas
For Each cel In are
str = cel.Formula
With WorksheetFunction
str = .Substitute(.Substitute(str, "#Ref!", sErsetzung ), "#BEZUG!", sErsetzung )
End With
cel.FormulaLocal = str
Next
Next
Application.ErrorCheckingOptions.BackgroundChecking = ret
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End Sub
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
27.05.2024 15:50:22 |
Ursula |
|
|
|
27.05.2024 15:59:04 |
ralf_b |
|
|
|
27.05.2024 16:21:18 |
Ursula |
|
|
|
27.05.2024 18:36:49 |
ralf_b |
|
|
|
27.05.2024 21:00:44 |
Ursula |
|
|
|
28.05.2024 02:48:21 |
ralf_b |
|
|
|
28.05.2024 07:23:06 |
Ursula |
|
|
Formelteil in mehreren Tabellenblätter ersetzen. |
28.05.2024 08:23:31 |
ralf_b |
|
|
|
28.05.2024 13:25:27 |
Ursula |
|
|
|
28.05.2024 16:24:18 |
ralf_b |
|
|