[gelöst]Excel Automatisierung - Selektierte Zeilen und Spalten ermitteln



  • Moin!

    Wie / über welches Interface/Objekt kann ich per Automatisierung die markierten Zellen einer Excel Tabelle ermitteln?
    Bisher habe ich folgendes versucht-
    Ich hole mir die Eigenschaft "Selection" über das _Application Interface. Dort bekomme ich ein "Range" Objekt. Mit diesem kann ich nun die markierten Bereiche im Excel-Stil ermitteln ("A2:Z2" zum Beispiel):

    if (!ExlInvoke(m_pExcelApp, L"Selection", &vargRng, DISPATCH_PROPERTYGET, DISP_FREEARGS))
    		return NULL;	
    
    	if (ExlInvoke(vargRng.pdispVal, L"Address", &CellRange, DISPATCH_PROPERTYGET, DISP_FREEARGS))
    	{
    		BSTR AdrRange = CellRange.bstrVal;
    		CString szSel = AdrRange;
    
                      ...
    

    Ich brauche den markierten Bereich aber als Zahl in der Form von/bis Spalte/Zeile. Über das "Range" Objekt ist es mir auch möglich die erste Zeile und Spalte des Bereichs zu ermitteln, aber ich finde nichts was mir die Zellen-Anzahl oder die letzte Zeile/Spalte zurückgibt 😕
    Hat jemand eine Idee?

    (edit)
    Lösung:
    "Areas" über das Range-Objekt ermitteln. "Count" abfragen, anschliessend mit "Item" durch alle Areas gehen (count). Dort die Eigenschaften "Rows" und "Columns" ermitteln und deren "Count" auswerten. omg 🙄


Anmelden zum Antworten