🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

(Gelöst) Ich Sehe mein Fehler nicht

Alles zur Programmierung im LibreOffice.
Atwist
Beiträge: 82
Registriert: Mo 14. Sep 2015, 18:46

(Gelöst) Ich Sehe mein Fehler nicht

Beitrag von Atwist » So 23. Okt 2016, 16:14

Hallo Leute,

Hab wieder mal einen Problem, ich finde mein Fehler nicht
Alles Funktioniert außerhalb das IF teil.
Ich versuche hiermit der Knopf auszuschalten wenn er betätigt ist sodass die Daten nur ein mal kopiert werden.

Was sehe ich nicht.

Code: Alles auswählen

sub DataNaarFebruari (oEvent)
   Doc = ThisComponent
   Sheets = Doc.Sheets()
   SheetCopy = Sheets.getByName("Jan")
   SheetPaste = Sheets.getByName("Feb")
   CopyRange = SheetCopy.getCellRangeByName("B3:C10")
   PasteRange = SheetPaste.getCellRangeByName("B3:C10")
   PasteRange.DataArray = CopyRange.DataArray
   CopyRange = SheetCopy.getCellRangeByName("B17:C38")
   PasteRange = SheetPaste.getCellRangeByName("B17:C38")
   PasteRange.DataArray = CopyRange.DataArray
   CopyRange = SheetCopy.getCellRangeByName("K7")
   PasteRange = SheetPaste.getCellRangeByName("H2")
   CopyRange = SheetCopy.getCellRangeByName("L7")
   PasteRange = SheetPaste.getCellRangeByName("L7")
   PasteRange.DataArray = CopyRange.DataArray
  	 If
   	.getByName("NieuweMaand1").State = 1 then
   	.getByName("NieuweMaand1").Enabled = False
  	 End If
		call GaNaarFebruari   
End sub
Zuletzt geändert von Atwist am Mi 26. Okt 2016, 13:43, insgesamt 1-mal geändert.
Schöne grüße aus Emsland

Andreas

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: Ich Sehe mein Fehler nicht

Beitrag von gogo » So 23. Okt 2016, 16:52

Code: Alles auswählen

   PasteRange.DataArray = CopyRange.DataArray
   with DEIN_OBJEKT
      If .getByName("NieuweMaand1").State = 1 then
	      	.getByName("NieuweMaand1").Enabled = False
      End If
	end with
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

Atwist
Beiträge: 82
Registriert: Mo 14. Sep 2015, 18:46

Re: Ich Sehe mein Fehler nicht

Beitrag von Atwist » So 23. Okt 2016, 17:07

Hallo gogo,

Was wird gemeint mit "DEIN_OBJEKT" ??
Schöne grüße aus Emsland

Andreas

Atwist
Beiträge: 82
Registriert: Mo 14. Sep 2015, 18:46

Re: Ich Sehe mein Fehler nicht

Beitrag von Atwist » So 23. Okt 2016, 19:09

Ich dachte das ich es gefunden hatte :oops: :oops:

Code: Alles auswählen

sub DataNaarFebruari (oEvent)
	Dim Button As Object
   Doc = ThisComponent
   Sheets = Doc.Sheets()
   SheetCopy = Sheets.getByName("Jan")
   SheetPaste = Sheets.getByName("Feb")
   CopyRange = SheetCopy.getCellRangeByName("B3:C10")
   PasteRange = SheetPaste.getCellRangeByName("B3:C10")
   PasteRange.DataArray = CopyRange.DataArray
   CopyRange = SheetCopy.getCellRangeByName("B17:C38")
   PasteRange = SheetPaste.getCellRangeByName("B17:C38")
   PasteRange.DataArray = CopyRange.DataArray
   CopyRange = SheetCopy.getCellRangeByName("K7")
   PasteRange = SheetPaste.getCellRangeByName("H2")
   CopyRange = SheetCopy.getCellRangeByName("L7")
   PasteRange = SheetPaste.getCellRangeByName("L7")
   PasteRange.DataArray = CopyRange.DataArray
   with Button
      If .getByName("NieuweMaand1").State = 1 then
         .getByName("NieuweMaand1").Enabled = False
      End If
   end with
	call GaNaarFebruari   
End sub
Schöne grüße aus Emsland

Andreas

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: Ich Sehe mein Fehler nicht

Beitrag von gogo » Mo 24. Okt 2016, 01:08

Das kann nicht funktionieren, Du musst dem Namen "Button" ein reales Objekt zuweisen, sonst weiss LO nur, dass "Button" auf ein Objekt verweisen soll, aber nicht auf welches.
z.B.:

Code: Alles auswählen

...
Dim Button As Object
...
Button = SheetCopy.DrawPage.Forms.getByIndex(0).getByName("NieuweMaand1")
...
   with Button
      If .State = 1 then
	      	.Enabled = False
      End If
	end with
...
oder einfach:

Code: Alles auswählen

...
   with SheetCopy.DrawPage.Forms.getByIndex(0).getByName("NieuweMaand1")
      If .State = 1 then .Enabled = False
	end with
...
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

Atwist
Beiträge: 82
Registriert: Mo 14. Sep 2015, 18:46

Re: Ich Sehe mein Fehler nicht

Beitrag von Atwist » Mo 24. Okt 2016, 06:38

Hallo gogo,

Leider funktionieren beide nicht bei mir, der Fehler bin ich bin schon so lange hiermit beschäftigt das ich es nicht mehr sehe,

Code: Alles auswählen

sub DataNaarFebruari (oEvent)
   Dim Button As Object
   Doc = ThisComponent
   Sheets = Doc.Sheets()
   SheetCopy = Sheets.getByName("Jan")
   SheetPaste = Sheets.getByName("Feb")
   CopyRange = SheetCopy.getCellRangeByName("B3:C10")
   PasteRange = SheetPaste.getCellRangeByName("B3:C10")
   PasteRange.DataArray = CopyRange.DataArray
   CopyRange = SheetCopy.getCellRangeByName("B17:C38")
   PasteRange = SheetPaste.getCellRangeByName("B17:C38")
   PasteRange.DataArray = CopyRange.DataArray
   CopyRange = SheetCopy.getCellRangeByName("K7")
   PasteRange = SheetPaste.getCellRangeByName("H2")
   CopyRange = SheetCopy.getCellRangeByName("L7")
   PasteRange = SheetPaste.getCellRangeByName("L7")
   PasteRange.DataArray = CopyRange.DataArray
   with SheetCopy.DrawPage.Forms.getByIndex(0).getByName("NieuweMaand1")
      If .State = 1 then .Enabled = False
   end with
   call GaNaarFebruari   
End sub
oder

Code: Alles auswählen

sub DataNaarFebruari (oEvent)
   Dim Button As Object
   Doc = ThisComponent
   Sheets = Doc.Sheets()
   SheetCopy = Sheets.getByName("Jan")
   SheetPaste = Sheets.getByName("Feb")
   CopyRange = SheetCopy.getCellRangeByName("B3:C10")
   PasteRange = SheetPaste.getCellRangeByName("B3:C10")
   PasteRange.DataArray = CopyRange.DataArray
   CopyRange = SheetCopy.getCellRangeByName("B17:C38")
   PasteRange = SheetPaste.getCellRangeByName("B17:C38")
   PasteRange.DataArray = CopyRange.DataArray
   CopyRange = SheetCopy.getCellRangeByName("K7")
   PasteRange = SheetPaste.getCellRangeByName("H2")
   CopyRange = SheetCopy.getCellRangeByName("L7")
   PasteRange = SheetPaste.getCellRangeByName("L7")
   PasteRange.DataArray = CopyRange.DataArray
   Button = SheetCopy.DrawPage.Forms.getByIndex(0).getByName("NieuweMaand1")
   with Button
      If .State = 1 then
            .Enabled = False
      End If
   end with
   call GaNaarFebruari   
End sub
NieuweMaand1_Botton.png
NieuweMaand1_Botton.png (7.55 KiB) 3970 mal betrachtet
Schöne grüße aus Emsland

Andreas

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Ich Sehe mein Fehler nicht

Beitrag von F3K Total » Mo 24. Okt 2016, 16:58

Moin,
lade eine Beispieldatei (.ods) hoch, dann klappt es in 5 Minuten.
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: Ich Sehe mein Fehler nicht

Beitrag von gogo » Mo 24. Okt 2016, 17:18

SheetCopy.DrawPage.Forms.getByIndex(0).
... war nur geraten.
... der Wortlaut der Fehlermeldung wäre auch günstig ;)
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

Atwist
Beiträge: 82
Registriert: Mo 14. Sep 2015, 18:46

Re: Ich Sehe mein Fehler nicht

Beitrag von Atwist » Mo 24. Okt 2016, 17:34

Beispiel.ods
(35.25 KiB) 183-mal heruntergeladen
Schöne grüße aus Emsland

Andreas

Atwist
Beiträge: 82
Registriert: Mo 14. Sep 2015, 18:46

Re: Ich Sehe mein Fehler nicht

Beitrag von Atwist » Mo 24. Okt 2016, 17:39

Ich konnte in die makro Dateien von Andrew Pitonyak auch nichts finden.
Schöne grüße aus Emsland

Andreas


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten