2016-12-18 3 views
0

Ich habe mehrere Tabellen mit Stunden als Text in Spalte A und und einer laufenden Summe neben in in Spalte BAppend Text in eine Zelle gefunden

Die Zeile, in der wir die aufgeführten Stunden variiert die Deshalb führe ich einen finden um seinen Standort zu bekommen.

Wir führen eine Roll Summe (= 5 + 3 + 6 + 8) einen visuellen Hinweis haben, wie in dem einzelnen 5 Stunden am ersten Tag ausgearbeitet 3 Stunden, um den nächsten, 6 die nächsten usw.

Ich versuche eine Formel zu erstellen, die diese Zeichenfolge hinzufügen und die Formel vervollständigen könnte, sodass ich die Summe der Formel in der Tabelle und die einzelnen Zusätze in ihrem Inhalt sehen würde.

Bis jetzt habe ich etwas, um die Zelle zu finden und zu lokalisieren, aber ich kann es nicht erreichen, an das Ende in seinem Inhalt anzuhängen.

Betrachten Sie die Thours Variable,

Sub findhours() 
Dim hours As Range 
    Set hours =  Application.Workbooks("vbstest.dec17").Worksheets("sheet1").Cells.Find("hours") 
Dim thours As Range 
    Set thours =  Application.Workbooks("vbstest.dec17").Worksheets("sheet2").Cells.Find("hours") 

Dim z As Integer 
    Dim zh As Integer 

    z = hours.Column 
    zh = thours.Column 

Dim x As Integer 
Dim xh As Integer 

    x = hours.Row 
    xh = thours.Row 


    Application.Workbooks("vbstest.dec17").Worksheets("sheet1").Cells(x, z).Offset(0, 1).Value = 5 

Die oben erfüllt Stunden täglich, von Thours ein wenig mehr benötigt. Wie kann ich so etwas wie:

Range(zh, xh + 1) 

, die eine Reihe von Zusatz ist (= 5 + 3 + 6 + 8) und in der Lage sein, diese zusätzlich zu addieren etwas wie (= 5 + 3 + 6 + zu erhalten 8 + 4) und dann in der Lage sein, zu diesem Makro zurückzukehren, um diese Formel hinzuzufügen? Die meisten meiner Versuche haben ihren Wert zurückgegeben (22).

Vielen Dank für Ihre Hilfe.

+0

Versuchen Sie etwas wie 'Zellen (xh + 1, zh) .Formula = Zellen (xh + 1, zh) .Formula &" +5 "'? – YowE3K

Antwort

1

Ich kann nicht ganz herausfinden, welche Zelle, was in Ihrer Frage enthält, aber unter der Annahme, dass Cells(r1, c1).Value die aktuellen Gesamtarbeitsstunden enthalten, und Cells(r2, c2).Formula enthält eine Formel, die die bisherigen Gesamtarbeits berechnet, dann können Sie die Formel aktualisieren, um spiegelt die aktuellen Stunden durch etwas gearbeitet wie:

Cells(r2, c2).Formula = Cells(r2, c2).Formula & "+" & _ 
         (Cells(r1, c1).Value - Cells(r2, c2).Value) 

ich glaube, ich habe Ihr Bogenlayout gearbeitet, so denke ich, die Formel

With Application.Workbooks("vbstest.dec17").Worksheets("sheet2") 
    .Cells(xh, zh + 1).Formula = .Cells(xh, zh + 1).Formula & "+" & _ 
    (Application.Workbooks("vbstest.dec17").Worksheets("sheet1").Cells(x, z + 1).Value - _ 
    .Cells(xh, zh + 1).Value) 
End With 
wird
Verwandte Themen