Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

FormulaLocal vs. FormulaR1C1
#11
Hi,

(18.10.2016, 14:59)BoskoBiati schrieb: bei mir sagt das grüne Dreieck, dass die Formel sich auf leere Zellen bezieht. Das kann man abschalten. Die meisten Fehlermeldungen habe ich bei mir abgeschaltet.

ne, bei mir ist das der Fehler:
dabei wird aber in der Zeile, die nach einfügen eine nach unten rutscht, die Formel nicht komplett weitergezählt in B und C:
B854: =WENN(G854="A";B852;"")
C854: =WENN(G854="P";LINKS(H854;23);WENN(G854="A";C852;""))
anstatt 852 müßte da jeweils 853 stehen.

Wenn ich es über diese Codezeile versuche zu umgehen, wird der Inhalt reinkopiert und nicht die Formel:
Range("C" & loZeile + 2) = Range("C" & loZeile) 'Beheben des "grünes Dreieck"-Fehlers

Irgendwas ist bei mir falsch.
Antworten Top
#12
Hallo,

typisches Problem beim Zeilen einfügen. Dein Term muss so lauten:


Code:
Index(B:B;Zeile()-1)
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#13
Mir scheint Spalte A identisch zu Spalte D (=redundant)
Spalte G scheint mir auch überflüssig zu sein.


Angehängte Dateien
.xlsb   __Protokoll snb.xlsb (Größe: 30,93 KB / Downloads: 2)
Antworten Top
#14
Hi,

(18.10.2016, 15:35)snb schrieb: Mir scheint Spalte A identisch zu Spalte D (=redundant)
Spalte G scheint mir auch überflüssig zu sein.
  • Spalte A ist in Verbindung mit B zur Unterscheidung von Entwicklungsprojekten und Entwicklungsvorgängen. Spalte D ist zur Darstellung des Status des Projekt-Unterpaketes und der Aufgaben.
  • Spalte C dient zur Zuordnung der Projekte im gefilterten Zustand und es soll immer der Projektname aus der Überschrift wiederholt werden, bis eine neue Projektüberschrift in Spalte H steht.
  • Spalte G ist zur Verbesserung der Übersichtlichkeit: eine Zeile Projektüberschrift und eine offene Anzahl von Zeilen mit zu erledigenden Aufgaben im Projekt-Unterpaket.
  • Spalte B: Die Nummer der Projekte kann nicht fortlaufend sein, denn es werden einzelne Projekt-Unterpakete, die unabhängig voneinander bearbeitet werden in unterschiedlicher Reihenfolge unter gleicher Projektnummer zu unterschiedlichen Zeiten notiert/angelegt.

Makros:
  • richtig ist, ein neues Projekt-Unterpaket wird immer chronologisch ganz unten unter dem letzten Paket angelegt.
  • Beim einfügen neuer Zeilen mit M_snb_1 oder M_snb_10 (Hier: einfügen immer oberhalb der aktuellen Zeile) ist immer in der Zeile, die durch das Einfügen nach unten rutscht in B und C das grüne Dreieck mit der Meldung: "inkosistente berechnete Spaltenformel" oder "ungültige Formel"
Antworten Top
#15
Hi Edgar,

(18.10.2016, 15:23)BoskoBiati schrieb: typisches Problem beim Zeilen einfügen. Dein Term muss so lauten:
Code:
Index(B:B;Zeile()-1)

das waren mir nun zu wenig Infos: wo im Code oder der Formel muß das stehen?

Momentan sehen die Code so aus:
Option Explicit

Sub ZeileEinfügen()
   ' 
   ' 18.10.2016 - RaB 
   ' 
   Dim loZeile As Long
   ' 
   Application.ScreenUpdating = False
   loZeile = ActiveCell.Row
   
   'nach Edgar ------------------------ 
   Rows(loZeile + 1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
   Range("A" & loZeile & ":G" & loZeile).Copy Range("A" & loZeile + 1 & ":G" & loZeile + 1)
   Range("G" & loZeile + 1) = "A"
   Range("D" & loZeile + 1).ClearContents
'   Range("C" & loZeile + 2) = Range("C" & loZeile)              'Umgehen des "grünes Dreieck"-Fehlers 
   '----------------------------------- 
   
   Range("H" & loZeile + 1).Select
   Application.CutCopyMode = False
   Application.ScreenUpdating = True
   
End Sub

Sub fünfZeilenEinfügen()
   ' 
   ' 18.10.2016 - RaB 
   ' 
   Dim loZeile As Long
   ' 
   loZeile = ActiveCell.Row
   
   Rows(loZeile + 1).Resize(5).EntireRow.Insert
   Range("A" & loZeile & ":G" & loZeile).Copy Range("A" & loZeile + 1 & ":G" & loZeile + 5)
   Range("G" & loZeile + 1 & ":G" & loZeile + 5) = "A"
   Range("D" & loZeile + 1 & ":D" & loZeile + 5).ClearContents
   Range("H" & loZeile + 1).Select
     
End Sub

Sub neuesProjekt()
   ' 
   ' neuesProjekt anlegen 
   ' 
   Dim loLetzte As Long
   ' 
'   loZeile = ActiveCell.Row 
   loLetzte = Sheets("Protokoll").Cells(Rows.Count, 4).End(xlUp).Row                     ' letzte belegte in Spalte D (4) 
   
   'nach Edgar ------------------------ 
   Rows(loLetzte + 1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
   Range("A" & loLetzte & ":G" & loLetzte).Copy Range("A" & loLetzte + 1 & ":G" & loLetzte + 1)
      If Range("G" & loLetzte) = "A" Then
         Range("G" & loLetzte + 1) = "P"                        'neues Projekt in letzter Zeile 
         Range("B" & loLetzte + 1).ClearContents                'löschen der alten Projektnummer für neues Projekt 
'         Range("C" & loLetzte + 2) = Range("C" & loLetzte)      'Umgehen des "grünes Dreieck"-Fehlers 
      End If
    Range("D" & loLetzte + 1).Clear
    Range("B" & loLetzte + 1).Select
    
End Sub
Antworten Top
#16
Hallo Ralf,


das gehört in Deine Formeln. Die trägst Du ja am Anfang nicht per Makro ein, die werden ja nur weiterkopiert.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#17
Ich möchte Vorschlagen:

In Spalte H eintragen:

    Projektart (P oder E)  +  Projektnummer (000 - 999) + Projektname
z.B      P456Beispielprojekt
           E999Musterprojekt

dann zeigt Spalte A: P
dann zeigt Spalte B: 456
und dann ist Spalte C überflüssig weil wir immer Autofilter verwenden können auf Spalte B

im zweiten Beispiel:
dann zeigt Spalte A: E
dann zeigt Spalte B: 999

Ich habe in Spalte D Datavalidation zugefügt, und die conditional formatting 'saniert'


Angehängte Dateien
.xlsb   __Protokoll snb.xlsb (Größe: 30,34 KB / Downloads: 1)
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • Rabe
Antworten Top
#18
Hi Edgar,

(19.10.2016, 09:59)BoskoBiati schrieb: das gehört in Deine Formeln. Die trägst Du ja am Anfang nicht per Makro ein, die werden ja nur weiterkopiert.

cool, da müssen keine Zeilenangaben mehr eingefügt werden.

Die Formel für C geht nun so:
=WENN(G856="P";LINKS(H856;23);WENN(G856="A";INDEX(C:C;ZEILE()-1);""))

Nuuur: jetzt steht bei jeder eingefügten und allen mit dieser Formel versehenen Zeile das grüne Dreieck und "inkonsistente berechnete Formel". :19: :21:
Antworten Top
#19
Hallo,

dann schalte doch diese Fehlermeldung aus. Die braucht kein Mensch.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#20
Hi,

(19.10.2016, 10:31)BoskoBiati schrieb: dann schalte doch diese Fehlermeldung aus. Die braucht kein Mensch.

ok, habe ich jetzt gemacht.

So, hier ist das aktuelle Beispiel:

.xlsb   Protokoll erweitern.xlsb (Größe: 44,87 KB / Downloads: 3)

Nun können wir uns da dran machen:
es soll in Spalte D bei der Zeile des Projektes ("P" in Spalte G) das "erledigt" oder "läuft" oder "abgebrochen" eingetragen werden, wenn die dazugehörenden Aufgaben (= "A" in Spalte G) entsprechend markiert wurden.
  1.    mindestens ein "läuft" => läuft
  2.    alle "läuft" => läuft
  3.    alle "erledigt" => erledigt
  4.    Mehrheit "erledigt", Minderheit "abgebrochen" => erledigt
  5.    alle abgebrochen => abgebrochen
  6.    alle "wartet" => wartet
  7.    Minderheit "wartet" => läuft
  8.    fehlt noch was?
Der Status in der Projektzeile ("P" in Spalte G) soll also automatisch und nicht mehr manuell eingestellt werden.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste