Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
920to924
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
920to924
920to924
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Werte mit Konstanten versehen und kopieren

Werte mit Konstanten versehen und kopieren
04.11.2007 14:13:18
thomas
Hallo Excel-Spezialisten,
ich möchte anhand von eingelesenen Messdaten (Arbeitsblatt "Datenblatt) diese und dazu angeordnet Konstanten aus einer anderen Tabelle (Arbeitsblatt "Deckblatt) in ein anderes Datenblatt (Arbeitsblatt OT_UT-Soll einlesen. Aus diese Daten werden dann dynamische Diagramme erstellt, deren X-Achse sich dann an der Zahl der Messungen orientiert. (habe ich bereits gelöst)
Eine Beispieldatei habe ich hochgeladen: https://www.herber.de/bbs/user/47393.zip
Ins "Datenblatt" werden min. 1 Meßpunkt bis max. 24 Meßpunkte (MP1-MP24 in Zeilen) eingelesen . Je nach dem zu messenden Teile gibt es zwischen 1 und vermutlich ca. 400 Messungen. Diese ergeben dann die Spalten unter den Meßpunkten. (Makro ist im Beispiel drin)
Für jeden Wert eines eingelesenen Meßpunkts sollte dann der Wert des Meßpunkts in das Arbeitsblatt "OT_UT-Soll" übertragen werden (MP1 in Zelle B6) und dazu die passenden Konstanten aus dem "Deckblatt übernommen werden. Für den Meßpunkt1 sind die Konstanten im Deckblatt:
- OT in der Zelle B16, soll kopiert werden in "OT_UT-Soll" Zelle B3 und für jeden weiteren Wert von MP1 auch in die Zeile darunter
- Soll in der Zelle B17 soll kopiert werden in "OT_UT-Soll" Zelle B4 und auch wieder dann darunter
- UT in der Zelle B18 soll kopiert werden in "OT_UT-Soll" Zelle B5 und auch wieder dann darunter
- MU in der Zelle B19 soll kopiert werden in "OT_UT-Soll" Zelle B7 und auch wieder dann darunter
Die weiteren Meßpunkte folgen dann dem gleichen Schema.
Im Beispiel habe ich dies zwar mit Excel schon gelöst, allerdings habe ich dann ein Problem mit meinen dynamischen Diagrammen, da in den Zellen eine Formel steht und dann das Diagramm sich nicht mehr dynamisch anpasst, so dass ich wohl ein Makro brauche.
Bei dem Makro wäre mir folgendes noch wichtig: Wenn es keinen Meßwert gibt, sollte auch nichts kopiert werden. Die Werte in OT_UT-Soll sollten gelöscht werden, bevor neue übertragen werden.
Ich hoffe, jemand findet hier eine gute Lösung und sage schon mal vielen Dank und viele Grüße
Thomas

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte mit Konstanten versehen und kopieren
08.11.2007 10:43:00
Wolli
Hallo Thomas, na, Du traust Dich was zu fragen. Aber Dir kann geholfen werden! Mein Makro unten, bei Fragen fragen, Rückmeldung wäre nett! Gruß, Wolli

Option Explicit
Sub Daten_expandieren()
Dim Messung As Long, _
Messpunkt As Long
Messpunkt = 1
'Zeile im Datenblatt: Messung + 1
'Zeile im expandierten Blatt: Messung + 2
For Messung = 1 To 400
For Messpunkt = 1 To 24
'Spalte im Datenblatt: Messpunkt + 2
'Spalte im Deckblatt: Messpunkt + 1
'Spalte im expandierten Blatt: Messpunkt * 5 - 3 ... Messpunkt * 5 + 1
If Sheets("Datenblatt").Cells(Messung + 1, 1) = "" Then
Sheets("OT_UT_Soll").Range(Cells(Messung + 2, 2), _
Cells(Messung + 2, 121)).ClearContents
Else
'Deckblattpunkte auslesen
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5 - 3) = _
Sheets("Deckblatt").Cells(16, Messpunkt + 1)
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5 - 2) = _
Sheets("Deckblatt").Cells(17, Messpunkt + 1)
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5 - 1) = _
Sheets("Deckblatt").Cells(18, Messpunkt + 1)
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5 + 1) = _
Sheets("Deckblatt").Cells(19, Messpunkt + 1)
'Messpunkt auslesen
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5) = _
Sheets("Datenblatt").Cells(Messung + 1, Messpunkt + 2)
End If
Next Messpunkt
Next Messung
End Sub


Anzeige
kleine Korrektur
08.11.2007 11:06:00
Wolli
so ist's besser und schneller:

Option Explicit
Sub Daten_expandieren()
Dim Messung As Long, _
Messpunkt As Long
Messpunkt = 1
'Zeile im Datenblatt: Messung + 1
'Zeile im expandierten Blatt: Messung + 2
For Messung = 1 To 400
If Sheets("Datenblatt").Cells(Messung + 1, 1) = "" Then
Sheets("OT_UT_Soll").Range(Cells(Messung + 2, 2), _
Cells(Messung + 2, 121)).ClearContents
Else
For Messpunkt = 1 To 24
'Spalte im Datenblatt: Messpunkt + 2
'Spalte im Deckblatt: Messpunkt + 1
'Spalte im expandierten Blatt: Messpunkt * 5 - 3 ... Messpunkt * 5 + 1
'Deckblattpunkte auslesen
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5 - 3) = _
Sheets("Deckblatt").Cells(16, Messpunkt + 1)
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5 - 2) = _
Sheets("Deckblatt").Cells(17, Messpunkt + 1)
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5 - 1) = _
Sheets("Deckblatt").Cells(18, Messpunkt + 1)
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5 + 1) = _
Sheets("Deckblatt").Cells(19, Messpunkt + 1)
'Messpunkt auslesen
Sheets("OT_UT_Soll").Cells(Messung + 2, Messpunkt * 5) = _
Sheets("Datenblatt").Cells(Messung + 1, Messpunkt + 2)
Next Messpunkt
End If
Next Messung
End Sub


Anzeige

79 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige