Hola DavidSG4, prueba con la siguiente
Código Delphi
[-]function NumSemana(Fecha:string):integer;
var
PrimerDia:TDate;
DiaDelPrimerDia:integer;
begin
PrimerDia:=StrToDate('01/01/'+Copy(Fecha,7,4));
if DayOfWeek(PrimerDia)-1 =0
then DiaDelPrimerDia:=7
else DiaDelPrimerDia:=DayOfWeek(PrimerDia)-1;
Result:=Trunc(
(StrToDate(Fecha)-
PrimerDia+
DiaDelPrimerDia-1
) /7)+1;
end;