let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Questions", type text}}),
GetQuestion = Table.AddColumn(#"Changed Type", "Question", each if Text.Start([Questions],1)="(" then [Questions] else null),
GetAnswers = Table.AddColumn(GetQuestion, "Answers MC", each if [Question] = null then [Questions] else null),
FillDownQuestions = Table.FillDown(GetAnswers,{"Question"}),
FilterOutNulls = Table.SelectRows(FillDownQuestions, each ([Answers MC] <> null)),
GroupByQuestion_AllRows = Table.Group(FilterOutNulls, {"Question"}, {{"All", each _, type table [Questions=text, Question=text, Answers MC=text]}}),
AddIndexForGroup = Table.AddIndexColumn(GroupByQuestion_AllRows, "Index", 1, 1),
ExpandAll_AnswersMC = Table.ExpandTableColumn(AddIndexForGroup, "All", {"Answers MC"}, {"Answers MC"}),
AddRandom = Table.AddColumn(ExpandAll_AnswersMC, "Random", each Number.Random()),
AddIndex = Table.AddIndexColumn(AddRandom, "Index.1", 1, 1),
SortOnIndex_Random = Table.Sort(AddIndex,{{"Index", Order.Ascending}, {"Random", Order.Ascending}}),
RemoveHelperColumns = Table.RemoveColumns(SortOnIndex_Random,{"Random", "Index", "Index.1"})
in
RemoveHelperColumns