In the beginning of your macro, try to add: if (!(gInterpreter->IsLoaded("vector")))
gInterpreter->ProcessLine("#include <vector>");
gSystem->Exec("rm -f AutoDict*vector*vector*float*");
gInterpreter->GenerateDictionary("vector<vector<float> >", "vector");
For “std::vector<std::vector >” see [url]Storing 2D vector [--> vector<vector<...> >] into a TTree
For “std::vector<std::vectorstd::string >” see [url]Problem in getting the vector < vector <string> > branch