Как фильтровать элементы SharePoint за последние 15 дней: через интерфейс, PowerShell, REST‑API и CAML

Сегодня (MM/DD/YYYY). Чтобы извлечь элементы, созданные или изменённые за последние 15 дней, нужно задать диапазон дат с по . Ниже описаны несколько способов сделать это: через интерфейс SharePoint, с помощью PowerShell, через REST‑API и с использованием CAML‑запросов.


Фильтрация представления в веб‑интерфейсе SharePoint

Самый быстрый способ – создать или изменить представление списка/библиотеки.

  1. Откройте нужный список или библиотеку.
  2. Нажмите Изменить представление (или Создать представление).
  3. В разделе Фильтр выберите:
    • Поле: Дата изменения (или Дата создания в зависимости от задачи).
    • Условие: больше либо равно.
    • Значение: [Сегодня]-15 (SharePoint понимает относительные даты).
  4. Нажмите OK – представление покажет только записи за последние 15 дней.

Примечание. Если вам нужен фиксированный диапазон (например, только с по ), укажите два условия: больше либо равно И меньше либо равно .


PowerShell (SharePoint Online Management Shell)

Для автоматизации или работы с большими объёмами данных удобно использовать PowerShell.

Подготовка

Убедитесь, что установлен модуль Microsoft.Online.SharePoint.PowerShell и вы вошли в клиент:

Connect-SPOService -Url https://contoso-admin.sharepoint.com

Пример скрипта

Скрипт ниже получает все элементы списка Документы, изменённые за последние 15 дней.


$siteUrl = "https://contoso.sharepoint.com/sites/Projekt"
$listName = "Документы"
$daysBack = 15

$startDate = (Get-Date);AddDays(-$daysBack).ToString("yyyy-MM-dd")

$caml = @"
<View>
 <Query>
 <Where>
 <Geq>
 <FieldRef Name='Modified' />
 <Value Type='DateTime'>$startDate</Value>
 </Geq>
 </Where>
 </Query>
</View>
"@

$ctx = New-Object Microsoft.SharePoint.Client.ClientContext($siteUrl)
$ctx.Credentials = Get-Credential # введите учётные данные
$web = $ctx.Web
$list = $web.Lists.GetBy($listName)
$query = New-Object Microsoft.SharePoint.Client.CamlQuery
$query.ViewXml = $caml
$items = $list.GetItems($query)
$ctx.Load($items)
$ctx.ExecuteQuery

foreach ($item in $items) {
 Write-Host "ID: $($item.Id)  $($item['FileLeafRef']) Изменено: $($item['Modified'])" -ForegroundColor Green
}

Скрипт использует относительную дату (Get-Date.AddDays(-15)) и формирует CAML‑запрос с условием Geq (больше либо равно) для поля Modified.


REST‑API

Если вы работаете из внешнего приложения, JavaScript или Power Automate, удобно обращаться к REST‑эндпоинту SharePoint.

Запрос

https://contoso.sharepoint.com/sites/Projekt/_api/web/lists/getby('Документы')/items?
 $filter=Modified ge '2026-07-23T00:00:00Z'
 &$select=Id,FileLeafRef,Modified
 &$top=5000

Параметр $filter задаёт условие «Modified больше либо равно 23‑07‑2026». Формат даты – ISO 8601 в UTC (yyyy-MM-ddTHH:mm:ssZ). При необходимости добавьте верхнюю границу:

$filter=Modified ge '2026-07-23T00:00:00Z' and Modified le '2026-08-06T23:59:59Z'

Ответ будет содержать массив элементов, удовлетворяющих фильтру.


CAML‑запрос в пользовательском решении (например, в веб‑части или workflow)

Для разработки собственных решений можно использовать тот же CAML, что и в PowerShell.

<View>
 <Query>
 <Where>
 <And>
 <Geq>
 <FieldRef Name='Modified' />
 <Value Type='DateTime'>2026-07-23T00:00:00Z</Value>
 </Geq>

 <Leq>
 <FieldRef Name='Modified' />
 <Value Type='DateTime'>2026-08-06T23:59:59Z</Value>
 </Leq>
 </And>
 </Where>
 </Query>
</View>

Этот запрос вернёт все элементы, изменённые в диапазоне с 23 июля по 06 августа 2026 года включительно.


Советы и лучшие практики

  • Всегда указывайте часовой пояс (UTC) при работе с REST‑API и CAML, чтобы избежать смещения из‑за локальных настроек сервера.
  • Если список содержит более 5000 элементов, включите пагинацию ($top и $skiptoken для REST или используйте ListItemCollectionPosition в CSOM).
  • Для частого получения данных создайте представление с фильтром «Изменено за последние 15 дней» и используйте его URL в своих скриптах – это уменьшит нагрузку на сервер.
  • При работе с большими объёмами данных рассмотрите использование индекса по полю Modified (можно добавить через центр администрирования SharePoint).

Получить записи за последние 15 дней в SharePoint можно несколькими способами:

  • Через интерфейс – простой фильтр представления.
  • Через PowerShell – удобно для администрирования и автоматизации.
  • Через REST‑API – идеально для внешних приложений и потоков Power Automate.
  • Через CAML – подходит для кастомных решений и workflow.

Выберите метод, который лучше всего соответствует вашей задаче и технической стеку. Удачной работы с SharePoint!