You need to move these lines out of the event handler. Probably to the main scope.
Code:
local bar = CreateFrame("StatusBar", nil, derArtifactBar)
bar:SetAllPoints(true)
local text = bar:CreateFontString(nil, "OVERLAY", "GameFontNormal")
text:SetPoint("CENTER")
Do you really want to create another bar on top the existing one, though?