www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Vorhilfe
  Status Geisteswiss.
    Status Erdkunde
    Status Geschichte
    Status Jura
    Status Musik/Kunst
    Status Pädagogik
    Status Philosophie
    Status Politik/Wirtschaft
    Status Psychologie
    Status Religion
    Status Sozialwissenschaften
  Status Informatik
    Status Schule
    Status Hochschule
    Status Info-Training
    Status Wettbewerbe
    Status Praxis
    Status Internes IR
  Status Ingenieurwiss.
    Status Bauingenieurwesen
    Status Elektrotechnik
    Status Maschinenbau
    Status Materialwissenschaft
    Status Regelungstechnik
    Status Signaltheorie
    Status Sonstiges
    Status Technik
  Status Mathe
    Status Schulmathe
    Status Hochschulmathe
    Status Mathe-Vorkurse
    Status Mathe-Software
  Status Naturwiss.
    Status Astronomie
    Status Biologie
    Status Chemie
    Status Geowissenschaften
    Status Medizin
    Status Physik
    Status Sport
  Status Sonstiges / Diverses
  Status Sprachen
    Status Deutsch
    Status Englisch
    Status Französisch
    Status Griechisch
    Status Latein
    Status Russisch
    Status Spanisch
    Status Vorkurse
    Status Sonstiges (Sprachen)
  Status Neuerdings
  Status Internes VH
    Status Café VH
    Status Verbesserungen
    Status Benutzerbetreuung
    Status Plenum
    Status Datenbank-Forum
    Status Test-Forum
    Status Fragwürdige Inhalte
    Status VH e.V.

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Tabellenkalkulationen" - Excel
Excel < Tabellenkalkulationen < Anwendungsprogramme < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Tabellenkalkulationen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Excel: Daten sortieren
Status: (Frage) reagiert/warte auf Reaktion Status 
Datum: 21:56 Mo 02.07.2007
Autor: pamela

Hallo,bitte um Hilfe!!

ich soll ein Pysik Experiment(Luftkissenbahn) implementieren, was die gemessenen Werte (Weg und Zeit bei einer Bewegung) sortiert, dannach soll das Pogramm noch die Geschwindigkeit und gegebenenfalls die Beschleunigung berechnen. Weiterhin soll die mittlere Geschwindigkeit, sowie die Standartabweichung der Geschwindigkeit berechnet werden.
Zum Schluss sollen die Werte in einem Weg/Zeit Diagramm dargestellt werden.
Vielen Dank für eure Hilfe

Dateianhänge:
Anhang Nr. 1 (Typ: xls) [nicht öffentlich]
Anhang Nr. 2 (Typ: xls) [nicht öffentlich]
        
Bezug
Excel: Rückfrage
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 15:50 Mo 09.07.2007
Autor: Walty

Hallo pamela

sollst Du ein VB - Makro schreiben, das die beschriebene Aufgabe löst, oder reicht es das mit Excel von Hand durchzuführen?

Die zweitere Lösung ist einfacher:
Bereich der Werte markieren, Daten>Sortieren..., in Spalte C Formel (C6)"=$A6/$B6" nach unten kopieren/füllen; in Spalte D Formel (D7)"=($C7-$C6)/($A7-$A6)" ebenfalls nach unten füllen.
Die Erstellung des Diagramms ist wohl etwas komplizierter zu beschreiben.

Für das VBA_MAkro bedien' Dich doch an den in den Makros in der 2.Datei enthaltenen Funktionen, die die Spalten füllen.
Ansonsten kannst Du Dich auch sn dem oben beschriebenen Lösungseweg entlanghangeln...

Bezug
                
Bezug
Excel: zur Nachfrage
Status: (Frage) beantwortet Status 
Datum: 23:20 Mo 09.07.2007
Autor: pamela

Also ich muss das in VBA programmieren, also aus der Datei2, die ich schon geschrieben habe, soll ich ein Weg-Zeit-Diagramm machen, nur jenachdem welche Anfangswerte man dort eingibt verändert man die Tabellenlänge, und das Programm soll die Länge selbst erkennen und dazu das Diagramm zeichnen. Also ein Buttom mit Diagramm dort soll man einfach nur draufklicken, das Programm sucht sich die Daten und erstellt dazu das Diagramm.

Bezug
                        
Bezug
Excel: Antwort
Status: (Antwort) fertig Status 
Datum: 20:35 Di 10.07.2007
Autor: Walty


> Also ich muss das in VBA programmieren, also aus der
> Datei2, die ich schon geschrieben habe, soll ich ein
> Weg-Zeit-Diagramm machen, nur jenachdem welche Anfangswerte
> man dort eingibt verändert man die Tabellenlänge, und das
> Programm soll die Länge selbst erkennen und dazu das
> Diagramm zeichnen. Also ein Buttom mit Diagramm dort soll
> man einfach nur draufklicken, das Programm sucht sich die
> Daten und erstellt dazu das Diagramm.

achso,

ich bin kein VBA-crack, daher suche ich immer die Unterstützung des Makro-Recorders
- da muss man zumindest nicht mehr aufwändig nach den Objekten, Methoden und
wichtigen Eigenschaften suchen...

zuerst würde ich das Ende der Daten in Spalte B suchen

1: for i=6 to 65000
2:   if (!activeWorksheet.cells(i,2) ) '# Rückgabewert war leer
3:     intLetzteZeile = i-1            '# Zeilennummer der letzten Zelle speichern
4:     Exit For                        '# Schleife verlassen
5:   end if
6: Next


Dann liefert mir das Makro folgenden Code:
1:     Charts.Add
2:     ActiveChart.ChartType = xlXYScatterLines
3:     ActiveChart.SeriesCollection(1).XValues = "=Tabelle1!R6C4:R36C4"
4:     ActiveChart.SeriesCollection(1).Values = "=Tabelle1!R6C2:R36C2"
5:     ActiveChart.Location Where:=xlLocationAsObject, Name:="Tabelle1"

um das ganze etwas "bezüglicher" zu machen hab ichs 'n bischen umgeschriebt
1: Set MyChartObj = ActiveWorkbook.Charts.Add
2: MyChartObj.ChartType = xlXYScatterLines
3: MyChartObj.Activate.

bei meiner version werden aber anscheinend keine Datenreihen angelegt,
das ist aber auch gut so, da weiss ich wenigstens was da ist:
1: MyChartObj.SeriesCollection.NewSeries
2: MyChartObj.SeriesCollection(1).Values = Worksheets(1).Range(Worksheets(1).Cells(6, 2), _
3: Worksheets(1).Cells(intLetzteZeile, 2)) 'Range-Objekt, Spalte B, der Weg, die Y-Werte
4: MyChartObj.SeriesCollection(1).XValues = Worksheets(1).Range(Worksheets(1).Cells(6, 4), _
5:  Worksheets(1).Cells(intLetzteZeile, 4)) 'Range-Objekt, Spalte D, die Zeit, die X-Werte

Wenn ich jetzt kein extra Tabellenblatt für das Diagramm haben will,
dann verschiebe ich das Diagramm mit der "location"-Methode in das Tabellenblatt 1:
1:
2:  MyChartObj.Location Where:=xlLocationAsObject, Name:="Tabelle1" 

leider geht durch Seiteneffekte dabei mein Kontext/Objekt irgendwie verloren,
also hole ich ihn mir wieder zurück:
1:
2:  Set MyChartObj = ActiveChart 


für die Eigenschaften des Diagramms kannst Du dann mit dem Makrorecorder
und dem Diagramm-Assistenten rumspielen, bis Du das Gewünschte gefunden hast

hier nochmal vollständig:
1: Sub Makro_make_Diagramm()
2: Dim i, intLetzteZeile As Long
3: Dim MyChartsObj As Object
4:
5: Worksheets("Tabelle1").Activate
6:
7: For i = 6 To 65000
8:   If (ActiveSheet.Cells(i, 2) = "") Then '#Rückgabewert leer
9:      intLetzteZeile = i - 1              '#Zeilennumerder letzten Zeile speichern
10:      Exit For                            '#damit nicht bis zum Ende geloopt wird
11:   End If
12: Next
13:
14: Set MyChartObj = ActiveWorkbook.Charts.Add
15: MyChartObj.ChartType = xlXYScatterLines
16: MyChartObj.Activate
17: MyChartObj.SeriesCollection.NewSeries
18: MyChartObj.SeriesCollection(1).Values = Worksheets(1).Range(Worksheets(1).Cells(6, 2), Worksheets(1).Cells(intLetzteZeile, 2))
19: MyChartObj.SeriesCollection(1).XValues = Worksheets(1).Range(Worksheets(1).Cells(6, 4), Worksheets(1).Cells(intLetzteZeile, 4))
20:
21: 'ActiveChart.SeriesCollection(1).Name =
22: MyChartObj.Location Where:=xlLocationAsObject, Name:="Tabelle1"
23: Set MyChartObj = ActiveChart
24: With MyChartObj
25:         .HasTitle = True
26:         .ChartTitle.Characters.Text = "WegZeit Diagramm"
27:         .Axes(xlCategory, xlPrimary).HasTitle = True
28:         .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "t in s"
29:         .Axes(xlValue, xlPrimary).HasTitle = True
30:         .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "s in m"
31:     End With
32:     With MyChartObj
33:         .HasAxis(xlCategory, xlPrimary) = True
34:         .HasAxis(xlValue, xlPrimary) = True
35:     End With
36:     MyChartObj.Axes(xlCategory, xlPrimary).CategoryType = xlAutomatic
37:     With MyChartObj.Axes(xlCategory)
38:         .HasMajorGridlines = False
39:         .HasMinorGridlines = True
40:     End With
41:     With MyChartObj.Axes(xlValue)
42:         .HasMajorGridlines = True
43:         .HasMinorGridlines = False
44:     End With
45: last = ActiveSheet.Shapes.Count '# zugriff auf Positionierung hat man über "shape"-Objekt aus der
46:                                 ' shapes-Auflistung - die letzte dazugekommene shape muss mein
47:                                 ' Diagramm sein - und das will ich nach rechts verscheiben
48: ActiveSheet.Shapes(last).Left = ActiveSheet.Columns(15).Left 
49: ' dieser kram entfällt, genau wie oben die ".location"-Methode, wenn man das Diagramm auf einem eigenen Arbeitsblatt stehen lässt.
50: End Sub



hth, (ein Hoch auf den Makrorecorder !!!)
Gruß Walty

btw: wennjemand sich mit der Objekthierarchie auskennt, kanner das bestimmt noch schöner machen, diese Lösung ist mehr oder weniger aus dem MR abgeschrieben.
Btw2: du solltes deine Makros Auto1 und 2 nochmal genau Ansehen, da stimmt irgendwas nicht mit der Zuordnung zu Arbeitsblättern, und die Abfragen sehen auch nicht in Ordnung aus, ohne dass ich Dir das jetzt konkret sagen kann... (z.B negative Geschwindigkeit wird nicht abgefangen)

Bezug
                                
Bezug
Excel: Danke
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 22:44 Mi 11.07.2007
Autor: pamela

Hi Walty, danke erst mal für deine Hilfe, hoffe ich kann das auch mit dem Recorder, probier es gleich mal aus. Danke!!!!!  :)

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Tabellenkalkulationen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorhilfe.de