[Makro] "Speicherknopf"

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: [Makro] "Speicherknopf"

Re: [Makro] "Speicherknopf"

von eXTasY » Mi, 03.04.2013 18:53

Besser gesagt das Textfeld ist da, aber das Makro muss ich neu zuweisen.
Kann mir da jemand helfen?

MFG
eX

Re: [Makro] "Speicherknopf"

von eXTasY » Mo, 01.04.2013 17:15

lorbass hat geschrieben:
eXTasY hat geschrieben:Mein Problem ist, wenn ich die Datei schließe und dann wieder öffne ist das Textfeld weg
Wie wär's mit Speichern vor dem Schließen?

Gruß
lorbass
Danke aber den Tipp beherzige ich leider shcon, deswegen ist es ja so komisch ^^

MfG
eX

Re: [Makro] "Speicherknopf"

von lorbass » Mo, 01.04.2013 17:02

eXTasY hat geschrieben:Mein Problem ist, wenn ich die Datei schließe und dann wieder öffne ist das Textfeld weg
Wie wär's mit Speichern vor dem Schließen?

Gruß
lorbass

Re: [Makro] "Speicherknopf"

von eXTasY » Mo, 01.04.2013 16:21

Hi Leute,

ich hab noch ne andere Frage ^^

Ich habe in Textfeld erstellt und das Makro dort zugewiesen.
Mein Problem ist, wenn ich die Datei schließe und dann wieder öffne ist das Textfeld weg ^^

MfG
eX

Re: [Makro] "Speicherknopf"

von eXTasY » Mo, 01.04.2013 13:53

Hi,

Danke =)

Hatte noch ein Problem, aber das hat sich mit deinem Vorschlag erschlagen =)

MFG
eX

Re: [Makro] "Speicherknopf"

von F3K Total » So, 31.03.2013 17:40

Hallo,
ja, dein Code funktioniert! Herzlichen Glückwunsch.
Nun zwei Tipps:
  • Da in A1 eine Zahl steht, solltest Du auch eine Zahl auslesen (.value) und keinen Text(.string). Du merkst zwar keinen Unterschied, weil Basic so schlau ist den Text in eine Zahl zu konvertieren, aber dies kann an anderen Stellen zu Problemen führen.
  • statt goto und Sprungmarke kannst du eine for-next-Schleife nehmen
Hier ein Beispiel dafür:

Code: Alles auswählen

sub ZellenInTabellen 
    Dim i As Integer
    Dim n As Integer
    myDoc = thisComponent
    mySheet = myDoc.sheets(0)
    mycell = mysheet.getCellByPosition(0,0)  'Anzahl an Durchlauf
    myValue = mycell.value
    n = myValue-1
    for i = 0 to n
        ' Lesen einer Zelle
        mycell = mysheet.getCellByPosition(1,i+1)'Startzelle = B2
        myString = mycell.string
        ' Schreiben in nebenstehender Zelle
        mycell = mysheet.getCellByPosition(2,i+1)
        mycell.string = myString
        ' löschen des Wertes in LeseZelle
        mycell = mysheet.getCellByPosition(1,i+1)
        mycell.string = ""
    next i
    if n = 0 then sAnzahl = "einen Wert übertragen" else sAnzahl = n & " Werte übertragen"
    print sAnzahl
End Sub
Gruß R

Re: [Makro] "Speicherknopf"

von eXTasY » So, 31.03.2013 15:13

Net wirklich, sorry.

Beim lesen kann ich ja bei der Zelle (0,n) hernehmen und lasse n hochzählen.
Das müsste ja zum schreiben auch gehen, nur leider kommt ein Fehler wenn ich es mit (1,n) zB mache.

Ich sollte mich evtl auch etwas deutlicher ausdrücken, aber ist schwierig sorry.

Ich glaub ich habe es =)

Code: Alles auswählen

REM  *****  BASIC  *****   

sub ZellenInTabellen  

Dim i As Integer

myDoc = thisComponent 
mySheet = myDoc.sheets(0)
mycell = mysheet.getCellByPosition(0,0)  'Anzahl an Durchlauf
myString = mycell.string 
n = myString
i = 0

'----------------------------------------------------------

Line2: 'Sprungmarke

If i<n Then

' Lesen einer Zelle
mycell = mysheet.getCellByPosition(1,i+1) 
myString = mycell.string 

' Schreiben in nebenstehender Zelle
mycell = mysheet.getCellByPosition(2,i+1)
mycell.string = myString

' löschen des Wertes in LeseZelle
mycell = mysheet.getCellByPosition(1,i+1) 
mycell.string = ""

'hochsetzen von n
i=i+1 

'Wartezeit
#5

GoTo Line2 ' Sprung zu Line1

Else
' Ausgabe der Übernahme
print i,"Wert(e) übertragen"

End If

'----------------------------------------------------------

End Sub
Wäre schön, wenn jemand mal kurz drüberfliegt und mir evtl Fehler hier aufzeigt bzw was ich evtl anders machen kann.

MfG
eX

Re: [Makro] "Speicherknopf"

von lorbass » Sa, 30.03.2013 18:49

Stephan hat auch das Werk OpenOffice.org-Makros Erklärt von Andrew Pitonyak verlinkt. Darin findest du
[i]Andrew Pitonyak[/i] hat geschrieben:getCellRangeByName(name)
Namensbasierter Zugriff auf einen Zellbereich innerhalb des Bereichs. Der String enthält das Standardformat für den direkten Bezug auf die Zellen – etwa „B2:D5“ oder „$B$2“ - oder festgelegte Namen für Zellbereiche.
Beantwortet das deine Frage?

Gruß
lorbass

Re: [Makro] "Speicherknopf"

von eXTasY » Sa, 30.03.2013 18:33

Doch hab ich gesehen.
Hab schon ein wenig was, aber muss dennoch ne (doofe) frage stellen

mycell = mysheet.getCellRangeByName("B1")

kann ich in der zeile irgendwie immer die zelle erweitern also zu B2, B3, ...???

Danke schonmal

MFG
eX

Re: [Makro] "Speicherknopf"

von lorbass » Sa, 30.03.2013 18:26

eXTasY hat geschrieben: ne Beispieldatei, wo man mit HIlfe eines Makros einen Zellwert in eine andere Zelle schreibt
Hast du Stephans Hinweis auf Michael Dannenhöfers StarBasic / OpenOffice.org Basic FAQ übersehen? Sind das nicht Beispiele genug? Was erwartest du noch?

Gruß
lorbass

Re: [Makro] "Speicherknopf"

von eXTasY » Sa, 30.03.2013 18:11

Hi

Danke =)
Ich hab mir das alles mal durchgelesen und hab noch ein kurzes anliegen.

Hat jemand für mich wie ne Beispieldatei, wo man mit HIlfe eines Makros einen Zellwert in eine andere Zelle schreibt?

Danke

MFG
eX

Re: [Makro] "Speicherknopf"

von Stephan » Di, 05.03.2013 23:25

Kann ich so etwas auch erlernen? bzw. wo finde ich hierzu etwas?
Im ersten Thread des Makro-Forums:
viewtopic.php?f=18&t=1553

besonders erhellend dürften zunächst sein:
http://www.uni-due.de/~abi070/count.php ... eutsch.pdf
http://www.dannenhoefer.de/faqstarbasic/index.html


Gruß
Stephan

Re: [Makro] "Speicherknopf"

von eXTasY » Di, 05.03.2013 23:11

Hi,

ich brauche diesen Speicher für weitere spätere Ausgabe-Matrixen.
Einer sog. Qualifizierungsmatrix, sowie eines Bedarfsbogens bei der dann die Mitarbeiter sortiert nach Einsatzbereich angezeigt werden. ...
Mehrere Jahre sollen hier gar nicht reinkommen, da immer der Stand am Bewertungstag lediglich gespeichert wird.
Ich habe mir noch überlegt, dass ich max. im Bewertungsbogen eine Spalte der bereits gespeicherten Daten machen kann und falls die dazugehörige Zelle leer ist de Zelle im Speicher nicht geändert wird sobald man den Button drückt.

Kann ich so etwas auch erlernen? bzw. wo finde ich hierzu etwas?

MfG
eX

Re: [Makro] "Speicherknopf"

von F3K Total » Di, 05.03.2013 18:19

Hi,
das ist schon komplizierter, aber ist möglich, allein, du brauchst jemanden der es programmiert.
Ich sehe beim dezeitigen Aufbau der Tabellen wenig Sinn einen Speicher anzulegen, dessen einziger "Primärschlüssel" der Name eines Mitarbeiters ist, denn wie sollen die Bewertungen verschiedener Jahre auseinanderhalten werden?
Einfacher ist es, das Bewertungsblatt zu kopieren, und so für jeden Mitarbeiter ein neues anzulegen. In einer CALC Datei können bis zu 256 Blätter liegen.

Gruß R

Re: [Makro] "Speicherknopf"

von eXTasY » Di, 05.03.2013 17:09

HI,

Ich hab mal die Datei mit angehängt.

Unter Bewertungsbogen wird eine Eingabe (Bewertung) durchgeführt.
Nach der Bewertung sollte man dann auf einen "Speicherknopf" drücken, damit die Daten (gelbe Felder) in das Register "-Speicher-" übertragen bzw. überschrieben werden.

Vielen Dank schonmal für deine Hilfe =)

MFG
eX
Dateianhänge
Q-Matrix Beispieldatei.xls
(239 KiB) 41-mal heruntergeladen

Nach oben