How do i group columns using Excel interop?
if i record a macro (usually a good way to get started) i get this code:
Columns("I:M").Select
Selection.Columns.Group
unfortunately this doesn’t work due to several problems, at least in C++. First of all, Application.Selection returns a normal Range, then Range.Columns is another Range. And Range.Group is this method:
This method only works in connection with pivot tables.
So how do i create a column group using Excel interop?
Even if i manage to create a group, how can i shrink/expand it? By that i mean clicking on the + to show the content of the group, or rather the other way around, “click” on the minus to hide the group. If i do that while recording a macro, it is not reflected in the macro at all.
Despite the fact that the
Range.Group()documentation appears to relate to pivot tables, if you extract the columns usingRange.Columns, and then apply the.Group()method to that range, it will have the desired effect. In C#:Edit: The complete example, again in C# (apologies, it’s the example I have handy):