Cannot be sure with so little information, but I think that your problem is that you embed a variable name in a string, when you want to use the value of the variable.
DataRow[] rows = dt.Select("CompanyID not in oCompanyBO.SelectedSupplierIDs");
should be
DataRow[] rows = dt.Select(string.Format("CompanyID not in ({0})", oCompanyBO.SelectedSupplierIDs));
if
oCompanyBO.SelectedSupplierIDs
is a comma separated list.
However, if
oCompanyBO.SelectedSupplierIDs
is an array of SelectedSupplierID (int) then you need to first create a comma separated string
string idList = string.Join(",", oCompanyBO.SelectedSupplierIDs);
DataRow[] rows = dt.Select(string.Format("CompanyID not in ({0})", idList));