Microsoft Excel

Herbers Excel/VBA-Archiv

Formel per Makro kopieren? | Herbers Excel-Forum


Betrifft: Formel per Makro kopieren? von: Nina
Geschrieben am: 29.12.2009 09:45:15

Hallo ihr Lieben,

Ich habe eine sehr große Excel-Datei, in der ab der Spalte N5 bis APP1500 nur Formeln hinterlegt sind, die durch die Eingaben in den ersten 13 Spalten automatisch eingetragen werden.
Jetzt, wie sich ein Excel- Kenner bestimmt denken kann, kann man mit dieser Datei nicht arbeiten, weil Excel nur am Rechnen ist. Auch das Eintragen der Werte in den ersten Splaten ist eine Geduldsarbeit, weil alles viel zu lange dauert.
Jetzt benötige ich Hilfe, dass man mit dieser Datei arbeiten kann. Ich dachte man könnte evtl. eine Schaltfläche mir Makro anlegen, z.B. "Eintragen", so dass man in den Spalten A-M ohne Probleme Eintragungen machen kann und dieses Makro die Formeln ab z.b. N5 - APP5 kopiert und in der nächsten Zeile N6-APP6 einträgt. So hätte ich nur die Formeln in der Zeile, die benötigt wird.
Die Formel die ab der Spalte N5 eingetragen ist lautet:
=WENN(UND(VERWEIS(2;1/($N$2:N$2<>"");$N$2:N$2)>=$D378;VERWEIS(2;1/($N$2:N$2<>"");$N$2:N$2)<=$E378) *(WVERWEIS(WOCHENTAG(VERWEIS(2;1/($N$2:N$2<>"");$N$2:N$2);2);$H$4:$I378;ZEILEN($1:375))="x"); WVERWEIS(N$3&"*";$J$2:$L379;ZEILEN($1:377););"")
Dies ist evtl. eine Möglichkeit die ganzen Berechnungen zu stoppen. Ich bin aber auch gerne für andere Möglichkeiten offen. Ich bitte um Hilfe, dass ich mit dieser Riesen-Datei arbeiten kann, ohne ewige Wartezeiten und Berechnungen.
Lieben Dank bereits im Voraus!
LG Nina

  

Betrifft: AW:berechnung manuell von: hary
Geschrieben am: 29.12.2009 09:53:40

Hallo Nina
Hast Du schon versucht:Exceloptionen/Arbeitsmappenberechnung auf manuell stellen.
gruss hary


  

Betrifft: AW: AW:berechnung manuell von: Nina
Geschrieben am: 29.12.2009 10:03:18

Hallo Hary,

das habe ich bereits versucht, jedoch werden die Berechnungen dadurch nicht schneller und das Laden und Eintragen in die Tabelle leider auch nicht.
Ich glaube ein makro würde die Sache vereinfachen, da ich dann aus der Tabelle die ganzen Formeln löschen kann und nur dann die Formeln kopiere, die ich wirklich benötige.

LG Nina


  

Betrifft: setz doch Berechnung auf manuell von: Matthias L
Geschrieben am: 29.12.2009 09:58:56

Hallo

ExcelOptionen - Formeln - Berechnungsoption=manuell
Bei Bedarf mit F9 neu berechnen

Gruß Matthias


  

Betrifft: AW: setz doch Berechnung auf manuell von: Nina
Geschrieben am: 29.12.2009 10:02:36

Hallo Matthias,

das habe ich bereits versucht, jedoch werden die Berechnungen dadurch nicht schneller und das Laden und Eintragen in die Tabelle leider auch nicht.
Ich glaube ein makro würde die Sache vereinfachen, da ich dann aus der Tabelle die ganzen Formeln löschen kann und nur dann die Formeln kopiere, die ich wirklich benötige.

LG Nina


  

Betrifft: AW: Formel per Makro kopieren? von: Tino
Geschrieben am: 29.12.2009 11:37:30

Hallo,
wenn ich Dich richtig verstanden habe, könnte es so funktionieren.

Kommt als Code in die entsprechende Tabelle.

kommt als Code in Tabelle2

Option Explicit 
 
Private Sub Worksheet_Change(ByVal Target As Range) 
Dim RowRef&, LRowFormel& 
Dim Bereich As Range 
Set Bereich = Intersect(Range("A5:M" & Rows.Count), Target) 
 
If Not Bereich Is Nothing Then 
 Application.EnableEvents = False 
 ActiveSheet.EnableCalculation = False 
    'erste Eingabezelle 
    RowRef = Bereich(1, 1).Row 
    'Finde Zeile mit Formel ab N5 in Spalte N 
    LRowFormel = Range("N5:APP" & Rows.Count).SpecialCells(xlCellTypeFormulas)(1, 1).Row 
    'Formel übertragen 
    Range(Cells(RowRef, 14), Cells(RowRef, 1108)).FormulaR1C1 = _
    Range(Cells(LRowFormel, 14), Cells(LRowFormel, 1108)).FormulaR1C1 
    'alte Formelzeile löschen 
    Range(Cells(LRowFormel, 14), Cells(LRowFormel, 1108)).ClearContents 
  
 Application.EnableEvents = True 
 ActiveSheet.EnableCalculation = True 
End If 
End Sub 
 
 



Gruß Tino


  

Betrifft: AW: Formel per Makro kopieren? von: Nina
Geschrieben am: 29.12.2009 12:51:35

Hallo Tino,

vielen Dank für den Code!!! Ja, so habe ich mir das vorgestellt, aber es müsste noch eine Kleinigkeit geändert werden, da ich diesen Code so leider nicht benutzen kann.
Wie ich das verstanden und gesehen habe, sollte ich den Code richtig eingefügt haben, wird die Formel aus der oberen Zeile kopiert und anschließend gelöscht. Die Werte aus der Formel müssten schon erhalten bleiben und nicht komplett gelöscht werden, da ich mit diesen automatisch eingetragenen Werten rechnen und arbeiten muss.
Könntest Du mir diesen Code so umschreiben, dass ich ihn benutzen kann? Das wäre sehr lieb ;-)
Vielen Dank bereits im Voraus für Deine Mühe.
LG Nina


  

Betrifft: AW: Formel per Makro kopieren? von: Tino
Geschrieben am: 29.12.2009 13:43:27

Hallo,
lösche die Zeilen

    'alte Formelzeile löschen 
    Range(Cells(LRowFormel, 14), Cells(LRowFormel, 1108)).ClearContents
damit werden diese auch nicht mehr gelöscht.

Gruß Tino


  

Betrifft: AW: Formel per Makro kopieren? von: Nina
Geschrieben am: 29.12.2009 15:03:03

Hallo Tino,

vielen lieben Dank, jetzt funktioniert es.

Dankeschööön

LG Nina


Beiträge aus den Excel-Beispielen zum Thema "Formel per Makro kopieren?"