Is it possible to save BackgroundColor3 values with DataStore?

Try this instead,

local gui = script.Parent.Parent.StarterGui.TheWholePC.Frame
local DataStoreService = game:GetService("DataStoreService")


local color3 = gui.BackgroundColor3
local DataStore = DataStoreService:GetDataStore("DataStore")
local function convertColor3ToTable(color3)
return {
	["R"] = color3.R,
	["G"] = color3.G,
	["B"] = color3.B,
}
end

local data

local success, whoops = pcall(function()
	data = DataStore:GetAsync("BgColor-")
end)

if success then
    local savedColor = data
	DataStore:SetAsync("BgColor-", convertColor3ToTable(color3))
	print("Colors have been saved!")
else
	warn("An error occurred:", whoops)
end