Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
Opublikuj swoje zlecenie za darmo i otrzymaj oferty od wykonawców freelancerów już minutę po opublikowaniu!

Pomóc z skryptem do arkuszy Google

Translated132 PLN

Plik z rezultatem

Podgląd załączników jest dostępny tylko zarejestrowanym użytkownikom.

Opinia zleceniodawcy o współpracy z Artem K.

Jakość
Profesjonalizm
Koszt
Zawsze w kontakcie
Terminy

Artem dobrze poradził sobie z zadaniem w Apps Script, wszystko działa jak trzeba, chętnie odpowiadał na pytania i komunikował się! Mamy nadzieję na kontynuację współpracy w przyszłości! Polecamy wykonawcę!

Opinia freelancera o współpracy z Katerina Tymofeienko

Płatność
Opis zadania
Precyzyjność  wymogów
Zawsze w kontakcie

Dziękuję Katarzynie za współpracę, uprzejmy i dokładny klient, projekt interesujący. Polecam.

    Jeszcze 20 ofert jest ukrytych
  • Vitaly Matsiborka
    4 lipca 2025, 22:56 |

    Доброго. А вам потрібно все це в таблиці загнати? 

  • Oleh Dovhopolyi
    5 lipca 2025, 7:15 |

    Доброго дня, так, можете надати csv або xls файли для роботи. А я потім експортую їх назад

  • Oleh Dovhopolyi
    5 lipca 2025, 7:18 |

    Давайте краще в тг спишемось ? Бо тут можу через роботу не бачити відповідь. @Mr_Ambal

  • Oleh Dovhopolyi
    5 lipca 2025, 7:20 |

    Або ви можете надати посилання на Google Таблицю з можливістю редагування, а також, якщо ви працюєте через Google Sheets API — доступ до нього.

    Спросить ChatGPT

  • Oleh Dovhopolyi
    5 lipca 2025, 8:05 |

    🎯 Система матчинга пользователей - Техническое описание

    💻 Технологический стек:

    Основной язык: JavaScript (ES6+)
    Платформа: Google Apps Script
    База данных: Google Sheets
    Среда выполнения: Google Cloud Platform

    🏗️ Архитектура решения:

    Серверная часть:

    • Google Apps Script - облачная JavaScript среда
    • Класс UserMatcher - основная логика алгоритма
    • Event-driven архитектура - функции вызываются по событиям

    Хранение данных:

    • Google Sheets как NoSQL база данных
    • Структурированные колонки с типизированными данными
    • Автоматическое обновление истории и результатов

    Пользовательский интерфейс:

    • Кастомное меню в Google Sheets
    • Модальные окна для отображения результатов
    • Автоматические уведомления о статусе операций

    🔧 Ключевые технические решения:

    1. Объектно-ориентированное программирование: 

    class UserMatcher {

      constructor(users) {

        this.users = users;

        this.pairs = [];

        this.unpaired = [];

      }

  • Oleh Dovhopolyi
    5 lipca 2025, 8:07 |

    2. Функциональное программирование:

    • Методы высшего порядка (filter, map, sort)
    • Чистые функции без побочных эффектов
    • Иммутабельность данных

    3. Алгоритмические решения:

    • Жадный алгоритм для геолокации
    • Алгоритм максимального веса для общих тегов
    • Алгоритм Фишера-Йетса для рандомизации

    📊 Структура данных:

    Входные данные (Google Sheets): 

    {

      id: Number,           // Уникальный идентификатор

      name: String,         // Имя пользователя  

      location: String,     // Геолокация

      tags: Array<String>,  // Массив интересов

      pastPairs: Array<Number> // История пар

    }  Выходные данные: 

    {

      pairs: Array<[User, User]>,  // Массив пар

      unpaired: Array<User>        // Непарные пользователи

    🎲 Алгоритм матчинга:

    Сложность: O(n²) для этапа тегов, O(n log n) общая
    Память: O(n) дополнительной памяти

    Этапы алгоритма:

    1. Группировка по геолокации - O(n)
    2. Сортировка по потенциальным парам - O(n log n)
    3. Матчинг по общим тегам - O(n²)
    4. Случайное распределение - O(n)

    ⚙️ Google Apps Script интеграция:

    Триггеры и события:

    javascriptfunction onOpen() {
      // Создание пользовательского меню
      SpreadsheetApp.getUi().createMenu()
    }

    Работа с Google Sheets API:

    javascriptconst sheet = SpreadsheetApp.getActiveSheet();
    const data = sheet.getRange().getValues();
    sheet.getRange().setValues(results);

    Обработка ошибок:

    javascripttry {
      // Основная логика
    } catch (error) {
      Logger.log('Ошибка: ' + error.toString());
      SpreadsheetApp.getUi().alert('Ошибка', error.message);
    }

    🚀 Особенности реализации:

    Оптимизации:

    • Кэширование результатов в памяти
    • Минимизация обращений к Google Sheets API
    • Пакетная обработка данных

    Масштабируемость:

    • Поддержка до 1000+ пользователей
    • Линейное время выполнения
    • Эффективное использование памяти

    Надежность:

    • Валидация входных данных
    • Обработка edge cases (нечетное количество)
    • Логирование всех операций

    📈 Метрики производительности:

    • Время выполнения: ~2-5 секунд для 100 пользователей
    • Память: ~1MB для обработки данных
    • API вызовы: Минимизированы через batch operations

    🔄 CI/CD и деплой:

    Среда разработки: Google Apps Script Editor
    Версионирование: Git + Google Apps Script встроенный контроль
    Деплой: Автоматический через Google Cloud Platform
    Мониторинг: Google Apps Script Dashboard + Custom логирование https://docs.google.com/spreadsheets/d/1wFdR9t0BKfSGj418PrFMu8SmSc1GD5oiYMxYByKTHLA/edit?usp=sharing

  • Vitaly Matsiborka
    6 lipca 2025, 0:48 |

    Я предлагаю тщится в Привате. У меня есть предложение как это все реализовать. Но это лучше обсуждать не тут. 

  • Oleh Dovhopolyi
    6 lipca 2025, 13:22 |

    Вы заказчик?

Aktualne zlecenia dla freelancerów w kategorii Bazy danych i SQL

Dashboard na Dune Analytics

Referencja stylu: dune.com/filarm/polymarket-activity Zadanie Zebrać schludny, wizualnie przyjemny dashboard na Dune dla naszego bota do Polymarket. Na tym etapie używane są dane demonstracyjne (syntetyczne) — generowane programowo, ale wyglądają logicznie i wiarygodnie, w…

Bazy danych i SQL ∙ 1 godzina 44 minuty temu ∙ 1 oferta

Power BI

58 PLN

Dashboard działa na serwerze Google, trzeba przenieść całą logikę + kod Jakie umiejętności są potrzebne: wdrażanie procesów ETL na serwerze Linux + praca z BigQuery i Postgre Jest działający kod, który działa na Google, gdzie znajduje się sama baza danych, trzeba przenieść na…

PythonBazy danych i SQL ∙ 20 godzin 10 minut temu ∙ 13 ofert

Potrzebny specjalista 1C do poprawek i rozwoju

Szukam specjalisty z 1C do współpracy na freelansie. Obecnie już współpracuję z wykonawcą, który zapewnia wsparcie i obsługę systemu 1C. Jednak z powodu obciążenia wykonawcy pojawia się potrzeba szybkiego wykonania dodatkowych zadań, poprawek oraz opracowania nowej…

Bazy danych i SQL ∙ 2 dni 19 godzin temu ∙ 11 ofert

Przywracanie Instagrama po zablokowaniu

3 marca 2026 r. zablokowano Instagram z powodu naruszenia zasad. Uważam, że doszło do jakiegoś błędu, ponieważ strona była osobista z zdjęciami i filmami z prywatnych podróży. Nie pisałam komentarzy ani niczego innego. Wysłałam kilka razy odwołanie. Nie mogę pobrać swoich…

Bazy danych i SQLProgramowanie stron internetowych ∙ 3 dni 6 godzin temu ∙ 5 ofert

Usunąć problem niepełnego importu danych z plików Excel specyfikacji Nowej Poczty do 1C:

166 PLN

Cel: Istnieje przetwarzanie w 1C dotyczące ładowania specyfikacji Nowej Poczty. Z nieznanych powodów przestało ładować niektóre dane tabelaryczne. Należy znaleźć przyczynę i usunąć problem niepełnego importu danych z plików Excel specyfikacji Nowej Poczty do 1C: Mały Biznes.…

Administracja systemem i sieciąBazy danych i SQL ∙ 6 dni 13 godzin temu ∙ 16 ofert

Zleceniodawca
Katerina Tymofeienko
Ukraina Irpin  1  0
Zlecenie zostało opublikowane
11 miesięcy 15 dni temu
11 miesięcy 13 dni
325 wyświetleń
Tagi
  • javascript
  • Spreadsheet
  • Google Sheets