Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1884to1888
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
Inhaltsverzeichnis

Funktionswert an bestimmten Spaltenberei

Funktionswert an bestimmten Spaltenberei
27.05.2022 14:42:26
Roman
Tag zusammen,
ich arbeite aktuell an der Erstellung eines Excel Formulars. Wo ich aktuell nicht weiterkomme.
Das Formular wird entwickelt um Bauwerksuntersuchungen durchzuführen.
Über eine Userform generiere ich Daten in Form von Zahlen.
"Ebene": gibt Aussage zu dem Ort der aufgenommenen Schäden.
Im Bereich "B14:AQ27" sollen Schäden mit Werten von 1-3 beurteilt werden.
Die Eingabe und der Output aus der Userform funktionieren zufriedenstellend.
Wenn die UserForm ausgefüllt ist sollen die Daten per CommandButton in den Bereich "AR4:AU27" übernommen werden.
Das Makro kriege ich trotz mehrmaliger Versuche mit Makrorekorder nicht hin.
Was brauch ich?
1. Wert aus Spalte Ebene "A" in Spalte Ebene "AR" - klappt aktuell
2. "Mittelwertwenns", Mittelwert aus Schnittmenge der jeweiligen Ebene und den Spalten "Standsicherheit" - die erste Zeile funktioniert, gibt aber nur den Wert aus der ersten Zeile an .
Bild der Excel aktuell:
Userbild
Bisher als Code:

'Kopiert Wert Ebene
With Sheets("Boden_Zustandserfassung")
.Range("A14:A27" & .Cells(.Rows.Count, 2).End(xlUp).Row + 1).Copy
Sheets("Boden_Zustandserfassung").Range("AR4").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks _
:=False, Transpose:=False
End With
'Füllt Mittelwert in Bereich AS4 bis AS27
Dim Zelle As Long
Dim Zeile As Long
Zeile = 4
With .FormulaR1C1 = "=AVERAGEIF(R13C2:R13C43,R2C,R[10]C2:R[10]C43)"
End With
Bitte um Nachsicht, ich setze mich mit dem Thema erst seit 2 Wochen auseinander
Grüße Roman

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

Betreff
Datum
Anwender
Anzeige
AW: Funktionswert an bestimmten Spaltenberei
27.05.2022 19:21:45
ralf_b
deine Cells rows count usw. .. soll eigentlich die 27 ersetzen. so wird sie hinten dran gehängt und erweitert den Bereich enorm.
die +1 wird in diesem Ausdruck nur benutzt um die erste freie Zeile unter den Daten anzusprechen. Brauchst du hier nicht wenn nur der Datenbereich kopiert werden soll.

.Range("A14:A27" & .Cells(.Rows.Count, 2).End(xlUp).Row + 1).Copy
für welchen Ausdruck (Zellereich) soll diese With Klammer gelten?

With .FormulaR1C1 = "=AVERAGEIF(R13C2:R13C43,R2C,R[10]C2:R[10]C43)"
End With

Anzeige
AW: Funktionswert an bestimmten Spaltenberei
28.05.2022 12:20:54
Herbert_Grom
Hallo Roman,
Hajo hat immer auf solche Posts mit "das Bildbearbeitungsforum ist wo anders" so geantwortet, jedenfalls sinngemäß. Also, lade eine Beispielarbeitsmappe hoch, dann kann dir evtl. auch geholfen werden!
Servus
AW: Funktionswert an bestimmten Spaltenberei
30.05.2022 13:35:24
Roman
https://www.herber.de/bbs/user/153321.xlsm
Hier nochmal die Arbeitsmappe, wie gesagt ich bin ein blutiger Anfänger in der Thematik und versuche mich durch google und youtube daran ranzutasten.
Grüße Roman
AW: Funktionswert an bestimmten Spaltenberei
30.05.2022 13:36:24
Roman
Hallo ralf,
danke für die Antwort.

 With .FormulaR1C1 = "=AVERAGEIF(R13C2:R13C43,R2C,R[10]C2:R[10]C43)"
End With
Dieser "code" soll mir auf dem Zweiten Blatt, die Mittelwerte aus der Schnittmenge der Ebene und der Spaltenbezeichnung liefern.
Wenn auf Blatt 1, Ebene mit 1 Bezeichnet ist. Soll in Blatt 2, in der Zeile mit der selben Ebene in der Spalte "Standsicherheit", der Mittelwert aus allen Werten der Spalten "Standsicherheit" und der entsprechenden Ebene berechnet werden.
Ich hoffe das es so verständlich ist.
Kann ich dann den code

 .Range("A14:A27" & .Cells(.Rows.Count, 2).End(xlUp).Row + 1).Copy
komplett weglassen?
Grüße Roman
Anzeige
AW: Funktionswert an bestimmten Spaltenberei
30.05.2022 18:57:03
ralf_b
ich bin mir zwar nicht sicher ob diese Vorgehensweise sinnvoll ist , aber du wirst dir schon was dabei gedacht haben.
hier mal das Makro umgebaut.

Sub Daten_übernehmen_Boden()
Dim lrow As Long
'Übernahme Werte aus Ebene
'Daten_übernehmen_Boden Makro
' Die nach UserFormEingabe erzeugten Daten, werden in übersichtliche Durchschnittswerte in andere Tabelle übergeben.
'Kopiert Wert Ebene
With Sheets("Boden_Zustandserfassung")
'Anzahl der Zeilen ab A14
lrow = Range(.Range("A14"), .Cells(.Rows.Count, 1).End(xlUp)).Rows.Count
'Zeileninhalte von A nach AR
.Range("AR4").Resize(lrow).value = .Range("A14").Resize(lrow).value
'Füllt Mittelwert in Bereich AS:AU bis letzte belegte Zeile
.Range("AR4").Resize(lrow, 3).Offset(0, 1).FormulaR1C1 = "=AVERAGEIF(R13C2:R13C43,R2C,R[10]C2:R[10]C43)"
End With
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige