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

Makro funktioniert nicht

Makro funktioniert nicht
27.03.2007 13:50:17
André

Hallo,
war gestern schon mit dieser Angelegenheit im Forum,
allerdings war dort eine andere Fragestellung.
Jetzt habe ich das Problem das Excel das Makro wie unten nicht ausführen will.
Was ich möchte bzw. will ist den Bereich von E4:E8 einmal von oben herab zu kopieren und von unten noch oben zu kopieren.
Was mach ich nu?
Bitte um Hilfe
Gruß
André
With ActiveSheet
.Unprotect
.Range("E4").Select
.Selection.AutoFill Destination:=Range("E4:E8"), Type:=xlFillCopy
.Range("E4:E8").Select
.Range("E8").Select
.Selection.AutoFill Destination:=Range("E4:E8"), Type:=xlFillCopy
.Range("E4:E8").Select
.Range("D3").Select
.Protect
End With
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Nachfrage
27.03.2007 14:00:32
mpb
Hallo André,
leider verstehe ich die Frage nicht (und den Code in diesem Zusammenhang noch viel weniger). Möchtest Du so etwas erreichen wie "transponieren"? Also: Inhalt von ... nach...
E4 -> E8
E5 -> E7
E6 -> E6
E7 -> E5
E8 -> E4
Wenn nicht, bitte Problem nochmal neu beschreiben.
Gruß
Martin
AW: Nachfrage
27.03.2007 14:31:50
André
Hallo Martin,
im Prinzip ganz einfach ich möchte nur die Formel aus der Zelle E4 bis in Zelle E8 kopieren und umgekehrt.
Im Detail:
E4 auswählen, rechte Maustaste und runterziehen, Untermenü öffnet sich und Zelle kopieren... auswählen fertig.
Das gleiche möchte ich mit E8 machen, nur umgekehrt.
Der Hintergrund ist folgender:
Ich habe ein Makro im Hintergrund laufen, der den Inhalt in den o.g. Zellen erkennt und die einzelnen Tabellenblätter dann so benennt. Allerdings merkt das Makro nicht immer wann ein neuer Wert eingetragen wurde, selbst nach Return nicht.
Mit dem kopieren der Zellen funzt es dann.
Hoffe ich konnte es etwas verdeutlichen, ansonsten bitte nochmal nachfragen.
Gruß
André
Anzeige
AW: Noch offen
27.03.2007 14:44:31
mpb
Hallo André,
ich verstehe nur Bahnhof, daher die Frage noch mal auf offen gestellt.
Gruß
Martin
P.S. Vielleicht würde es helfen, das Makro zu posten und zu beschreiben, an welcher Stelle im Code welches Problem auftritt.
AW: Noch offen
28.03.2007 16:23:00
André
Hallo Martin,
habe den Code nochmal reingesetzt.
Da ich mich mit VBA nicht gut auskenne kann ich leider nicht erläutern an welcher Stelle der Code ein Fehler hat. Bzw. ob überhaupt ein Fehler vorhanden ist, da er funzt.
Mein Problem ist eigentlich nur, dass wenn sich in einer der Zellen ein Wert verändert er nicht sofort übernommen wird. Sprich ich gebe nichts in die Zellen ein sondern eine Formel holt sich die Werte.
D.h. für mich also, dass ich den Bereich E4:E8 immer manuell aktualisieren muss und ich die Formeln immer runter (von E4 bis E8) und hoch (von E8 zu E4) kopieren muss.
Dies wollte ich nun umgehen und mit Hilfe eines Makros umgehen, nur wie?
Gruß
André
Hier der Code:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim ii As Integer
For ii = 4 To 8                                           ' Zeilen 4 bis 8
If Not Intersect(Cells(ii, 5), Target) Is Nothing Then ' Spalte 5 = E
If BlattNam_Pruefung(Cells(ii, 5)) Then
Sheets(ii + 1).Name = Cells(ii, 5)               ' Blätter 5 bis 9
Else
MsgBox "E" & ii & " enthält keinen gültigen Blattnamen: " & vbLf & Cells(ii, 5)
End If
End If
Next ii
End Sub
Function BlattNam_Pruefung(BlaNam As String) As Boolean
If BlaNam = "" Or Len(BlaNam) > 31 Then Exit Function
If Application.Evaluate("=SUM((MID(""" & BlaNam & """,COLUMN(1:1),1)" & _
"={"":"";""/"";""\"";""?"";""*"";""]"";""[""})*1)") > 0 Then Exit Function
BlattNam_Pruefung = True
End Function

Anzeige
AW: Noch offen
31.03.2007 18:11:29
doppelter
Hallo Andre,
wenn sich die Werte durch Formeln ändern kannst Du auch das Calculate-Ereignis nehmen. Das läuft dann zwar bei jeder Berechnung, aber es läuft.
Hoffe geholfen zu habenGrüße von André aus Gera - Excel-97-2003

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige