In Excel und VBA, wie set den Wert aus der Zelle in die Formeln ein Ergebnis anstatt der Formel
Ich bin immer die Werte von einem Blatt und platzieren Sie diese in einem anderen mit einem makro in Excel. Ich habe derzeit dieses, die gut funktioniert:
sheet.range("B2:B35").Value = "=IF(SUMPRODUCT(--(Raw!$B$11:$B$322=$A2),--(Raw!$D$11:$D$322=All!$B$2),Raw!$H$11:$H$322)<>0,SUMPRODUCT(--(Raw!$B$11:$B$322=$A2),--(Raw!$D$11:$D$322=All!$B$2),Raw!$H$11:$H$322),""-"")"
Es, natürlich, legt, dass die gesamte Formel als Wert in der Zelle. Was ich möchte ist es nur, um das Ergebnis der Formel in die Zelle. Ich habe versucht, hinzufügen von Evaluate (), um die "WENN..." - Teil, aber dann die, WENN nicht richtig bewerten (ich nur am Ende mit "-" in jede Zelle). Ist dies möglich oder muss ich eigenen code zu Durchlaufen und ändern Sie den Wert auf den Wert der Zelle?
InformationsquelleAutor Kurt | 2012-10-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden:
Wenn das nicht funktioniert, Sie müssen möglicherweise zum ändern der Formatierung (erste):
Edit:
Lösung erwies sich die Ergänzung der folgenden Zeile nach dem OP-code:
Komisch. Wenn Sie es ausführen, dann wählen Sie es aus und tun Sie Folgendes in das Direktfenster): Auswahl.NumberFormat = "General", dann Auswahl.Wert = Auswahl.Wert, was Sie bekommen?
Ändern, was Sie gesagt leicht: hinzufügen Blatt.range("B2:B35").Value = Blatt.range("B2:B35").Wert hat es nur eine Zahl. Das funktioniert dann. Ich habe nur gehofft, ich würde nicht haben, um dies zu tun, wie ich den code in der OP etwa 5 mal mehr in einer Schleife. Naja. Leicht genug, um noch 1 Zeile code.
Sehr seltsam. Naja, bin froh, dass Ihr problem gelöst ist 🙂
InformationsquelleAutor mkingston