I know there are better ways to do this, but we have a "bug triage" sprint that we use as a bucket for all new defects. As QA/testing finds things, they assign them to this sprint. As defects are triaged, they have necessary fields populated, etc., and are then placed/prioritized in the backlog.
This sprint has been "emptied" of issues many times (that's the target state, after all). For some reason, though, now when it's emptied, it no longer shows on the board. If I create a new issue, assign it to that sprint, and refresh the board, the sprint appears and shows that one issue. If I delete that issue or assign that issue a different sprint and refresh the board, the sprint disappears again. Any idea what might be happening here?
There's another way you could do this... if you create an Epic for "Defects to Triage" and assign all new defects to that Epic. Then on the Scrum board you can filter your backlog based on the Epic (using the Epics panel on the left hand side). As you triage, you reassign to the correct Epic (or remove the Epic altogether if necessary).
The board will only show Active sprints. It sounds like the Sprint has previously been closed, and so by emptying it of issues it will disappear. But by adding issues again to it, it will become Active again.
If you add an issue to it, you should be able to see the Start/End dates of the Sprint. If the end date is in the past, then it has been previously closed. Just move the end date out to the future and it should work as it did before.