Registriert seit: 08.06.2020
Version(en): 365
Hallo,
möchte gerne einen Zelleninhalt in eine bestimmte erweiterte Eigenschaft schreiben.
Geht das wirklich nur über ein Macro?
Gibt es da keine einfache Funktion wie Param1=A1 oder sowas?
Ich will nur das der Inhalt der Zelle egal ob Text oder Zahl in die Eigenschaft geschrieben wird.
Bitte helft mir?
Im vorraus Danke!!!
Gruß
Heiko
Registriert seit: 06.12.2015
Version(en): 2016
Hallo,
teste mal diesen Code:
Code:
Sub CustomProperties()
On Error Resume Next
Dim DProp As DocumentProperties
Dim Prop As DocumentProperty
Set DProp = ThisWorkbook.CustomDocumentProperties
Tx = Array("Text1", "Text2", "Text3")
Vx = Array("Message", 42, #6/8/2020#)
Cells(1, 1).Resize(3) = Application.Transpose(Tx)
Set DProp = DProp.Add(CStr(Tx(0)), False, msoPropertyTypeString, CStr(Vx(0)))
Set DProp = DProp.Add(CStr(Tx(1)), False, msoPropertyTypeNumber, CInt(Vx(1)))
Set DProp = DProp.Add(Tx(2), False, msoPropertyTypeString, Vx(2))
On Error GoTo 0
End Sub
Sub Lesen()
Dim CP As DocumentProperty
For Each CP In ThisWorkbook.CustomDocumentProperties
Debug.Print CP.Name, CP.Value
Next CP
End Sub
mfg
Registriert seit: 08.06.2020
Version(en): 365
08.06.2020, 14:54
(Dieser Beitrag wurde zuletzt bearbeitet: 08.06.2020, 14:54 von schydhei.)
Erst einmal Danke,
verstehen tu ich das nicht wirklich.
Warum... Das script erzeugt zwar in den ersten 3 Zellen die Inhalte "Text1 , 2 ,3" , erzeugt aber kein Propertie mit diesen Inhalten.
Das ist aber das was ich brauche.
Habe ich ein Gedankenfehler?
Ach nochwas.... Was ich meine sind die erweiterten Eigenschaften im Tab Anpassen. Dort sollte dann das Attribute mit dem Inhalt der Zelle zu sehen sein.
Registriert seit: 06.12.2015
Version(en): 2016
Der Code schreibt die Werte der Array's Tx und Vx.
Wenn keine Beispieldatei geliefert wird, mache ich mir selbst ein paar Daten. CustomProperties brauchen 2 Werte: den Namen und den Value.
Ich hoffe, du kannst den Code von den Array zu Zellen umschreiben.
Btw: Man kann die Properties nur einmal anlegen, der 2. Versuch führt zu einem Fehler.
Registriert seit: 08.06.2020
Version(en): 365
Hallo,
das hier funktioniert...
ActiveWorkbook.CustomDocumentProperties("Attributname") = "Wert"
Warum man das aber allgmein nur als Macro hinbekommt ist schade. Vielleicht hat ja noch jemand eine Idee.