Про обращение никто не говорил в начале темы

В этом случае уже нельзя так создавать элементы. Придется сначала определить массив для классовых переменных а уже потом создавать:
Код:
var
I : Integer;
s:string;
Labels: Array[1..100] of TLabel;
begin
For I := 1 To 100
Do begin
Labels[i] := TLabel.Create(Self)
With Labels[i]
Do Begin
Parent := Self;
Top := I * 10;
Left := 100
Caption := 'label' + IntToStr(I);
End;
end;
***
s:=labels[i].caption;//как это правильно прописать
end;