Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Excel FAQ (часть 5)

Модерирует : gyra, Maz

Maz (27-03-2018 08:04): Microsoft Excel FAQ (часть 6)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Просьба к посетителям топика дополнять шапку наиболее часто задаваемыми вопросами со ссылками на ответы
в обязательном порядке

 
  • Смена представления имен столбцов с буквенного на цифровое и обратно


    Сумма прописью
  • Надстройка "PROP" (сумма прописью)
  • надстройка Excellerator (c) Michael Zemlanukha & Maxim Shemanarev
  • макрос Num2String


  • Список соответствия имен функций в английской и русской версиях Excel или здесь
  • Описание Microsoft Excel File Format (eng.)
  • Горячие клавиши в Excel (табличка)
  • краткая, но емкая инструкция для чайников по добавлению готовых макросов (на примере макросов по увеличению размера шрифта на X пунктов от мемебера ferias
     
    Предыдущие ветки топика: Часть 1 | Часть 2 | Часть 3 | Часть 4
     
    Все вопросы по программированию (макросы, скрипты, пользовательские функции и т.п.) обсуждаются в теме Excel VBA в разделе Прикладное программирование.
     
    При необходимости выложить скриншот, пользуйтесь сервисом ImageShack® (ограничение на размер файла <1.5 Mb)
     
    Книга Джон Уокенбах "Подробное руководство по созданию формул в Microsoft Office Excel 2002" PDF 34МБ Файлы к книге

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 13:13 09-03-2010 | Исправлено: uzeerpc, 12:47 20-12-2017
    Uraanfgh56



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго времени суток.
     
    Вопрос такой:  
     
    Есть таблица, в ней есть ссылки на файлы (вставлены по Ctrl+K), файлы эти допустим лежат на диске С или D или вообще флешке H (не суть).
    Если например перенести эту таблицу или файлы на другой диск (с другой буквой), или переименовать папку то соответственно эти файлы будут недоступны (переименованы или перемещены- изменился путь к файлу).
    Можно ли как-то интегрировать/вставить сами файлы в файл Excel чтобы файлы всегда были доступны -незивисимо от пути (имени буквы диска на котором они расположены), но файлы должны открываться по ссылке которая ведёт к этому файлу, т.е сделать нечто скажем так контейнера ?

    Всего записей: 3567 | Зарегистр. 03-11-2007 | Отправлено: 19:47 26-09-2013
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Uraanfgh56
    Есть несколько более-менее сходных решений .. например можно сам исходный файл и все связанные с ним хранить в одной директории, тогда при переносе всей директории или всех файлов в др. папку линки не оборвутся, т.к. в этом случае будет ссылка не абсолютная а относительная. Другое решение - задание ссылок через переменную, тогда например в отдельной строке можно указывать путь - а ссылки сгенерируются по формулам сохранив связь. Вероятно ещё какие варианты существуют, но это то что с ходу пришло.
    Если ближе к вопросу - то зависит от типа файлов, в случае - Excel, то разбить на структуры листов (файл=лист) .. / .. капитан очевидность отдыхает =)
    Если word/powerpoint/wordpad (или что там в списке от рисунков и до ещё чего.. OLE зарегистрированные) то можно через вставка -> обьект ..

    Всего записей: 747 | Зарегистр. 10-11-2005 | Отправлено: 05:10 27-09-2013 | Исправлено: vikkiv, 05:23 27-09-2013
    Fsp050

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, пожалуйста, как правильно записать формулу. Если a1=3, то b1=1 , а если а1=1,2,4, то b1=0

    Всего записей: 361 | Зарегистр. 02-04-2011 | Отправлено: 21:42 27-09-2013
    aidomars



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Код:
    If a1=3 then  
       b1=1
    else
       if a1=1 or a1=2 or a1=4 then
          b1=0
       end if
    end if


    Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 01:26 28-09-2013
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    aidomars
    Не VBA =)))
     
    Fsp050
    Зависит от того какие значения может принимать ячейка А1, если только дискретные из списка 1,2,3,4 то в B1 пишем =If(A1=3,1,0) или-же =CHOOSE(A1,0,0,1,0)
    если дискретный диапазон более широк (или он не дискретный) то можно =IF(OR(A1=1,A1=2,A1=4),0,IF(A1=3,1,"X"))

    Всего записей: 747 | Зарегистр. 10-11-2005 | Отправлено: 02:09 28-09-2013
    Fsp050

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    aidomars
    vikkiv
    Спасибо Вам))
    но что- то тут трабл с формулой  
    скрин

    Всего записей: 361 | Зарегистр. 02-04-2011 | Отправлено: 11:13 28-09-2013
    aidomars



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Fsp050
    =ЕСЛИ(ИЛИ(A1=1;A1=2;A1=4);0;ЕСЛИ(A1=3;1;""))
    vikkiv
    Точно, не VBA)

    Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 11:53 28-09-2013
    Fsp050

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    aidomars
    точно, работает, хотя один вопрос у меня есть по этой же теме, но он точно через вба решается. Попрошу помощи там

    Всего записей: 361 | Зарегистр. 02-04-2011 | Отправлено: 12:57 28-09-2013
    Futurism

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А как быть с диапазонами?)
    Например, если в ячейке а1 стоит число диапазоном от 0-5, то в b1 надо ставить значение ячейки с1
    если а1 имеет значение диапазон, которого 6-9, то в b1 вставить значение ячейки d1
    если а1 имеет значение диапазон, которого 10-14, то в b1 вставить значение ячейки e1
    если а1 имеет значение диапазон, которого 15-17, то в b1 вставить значение ячейки f1
    если а1 имеет значение диапазон, которого 18-19, то в b1 вставить значение ячейки g1
     
     

    Всего записей: 1200 | Зарегистр. 04-02-2011 | Отправлено: 14:40 29-09-2013
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Futurism
    можно (совсем незатейливо) так:

    Код:
    =ЕСЛИ(A1<=5;C1;ЕСЛИ(И(A1>5;A1<=9);D1;ЕСЛИ(И(A1>9;A1<=14);E1;ЕСЛИ(И(A1>14;A1<=17);F1;ЕСЛИ(И(A1>17;A1<=19);G1)))))

    Всего записей: 11796 | Зарегистр. 03-12-2003 | Отправлено: 16:35 29-09-2013
    Kai

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Как сделать, чтобы данные из двух таблиц автоматически отображались в третьей, сводной?
     
    Иллюстрация идеи: Т1: а, б | Т2: г, д | Т3: а, б, в, г.

    Всего записей: 366 | Зарегистр. 23-10-2003 | Отправлено: 21:32 29-09-2013 | Исправлено: Kai, 21:35 29-09-2013
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Kai
    а подробнее? и, лучше б, с конкретными таблицами..
    какие данные находятся в ячейках таблиц Т1 и Т2? текстовые? в Т3 их нужно объединить?  
     
    Добавлено:
    объединение строковых данных:


    Всего записей: 11796 | Зарегистр. 03-12-2003 | Отправлено: 22:26 29-09-2013
    Futurism

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALeXkRU
    респект

    Всего записей: 1200 | Зарегистр. 04-02-2011 | Отправлено: 23:22 29-09-2013
    westx

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Есть вопрос по Excel 2003, установил защиту на книгу Excel с паролем, потом нужно запоролить определенную строку, это я сделал Формат ячеек-Защитить ячейку, потом Сервис-Защита-Разрешить Изменение диапозонов, и наконец Сервис-Защита-Защитить лист, на этом какбы все но, одна проблемма панель где элем.управления не активны, как решить задачу?

    Всего записей: 40 | Зарегистр. 26-11-2012 | Отправлено: 12:02 01-10-2013
    Kai

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALeXkRU
    Нет, сами данные (и числовые, и текстовые) не нужно объединять, нужно просто слить все строки обеих таблиц в одну. Каждая таблица на отдельном листе.

    Всего записей: 366 | Зарегистр. 23-10-2003 | Отправлено: 21:38 02-10-2013
    Uraanfgh56



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    В ячейке есь текстовые данные типа:
    1-4534
    1-3490
    1-2856
    1-8762
    и т.д.  
     
    Нужно сделать чтобы в ячейках было так:
    4534
    3490
    2856
    8762
    и т.д.
     
    т.е убрать 1-
     
    Как сделать ?

    Всего записей: 3567 | Зарегистр. 03-11-2007 | Отправлено: 00:02 03-10-2013 | Исправлено: Uraanfgh56, 00:04 03-10-2013
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Kai
    ну, погадаю ещё раз..    
     

    Код:
    '------------------------------------------------------------------'
    '  сведение/копирование таблиц со всех листов на лист "Результат"  '  
    '------------------------------------------------------------------'
    Sub result_tbl1()
    Const result_sheet = "Результат"            'имя листа с результирующей таблицей
    Dim ws As Worksheet
       
    With Sheets(result_sheet)
    .Cells.ClearContents                    'очищаем лист с результирующей таблицей
    .Range("A1:A2") = "Сводная Таблица"     'для корректной работы .end(xldown)
    For Each ws In Worksheets               'цикл по листам
        If ws.Name <> result_sheet Then     'для всех кроме листа с результирующей таблицей
                                            'если первая ячейка листа не пустая, копируем заполненную область
                                            'область в первую свободную ячейку листа результата
            If ws.Range("A1") <> "" Then _
                ws.Range("A1").CurrentRegion.Copy .Range("A1").End(xlDown).Offset(1, 0)
        End If
    Next
    .Rows(1).Delete                         'зачищаем первую временную строку
    .Rows(1).Delete                         'зачищаем первую временную строку
    End With
    End Sub
    '------------------------------------------------

     
    Макрос копирует данные/таблицы (выделяется от первой ячейки А1 (не должна быть пустая!) до пустой строки) со всех листов книги на лист, указанный в строке
    Код:
    Const result_sheet = "Результат"            'имя листа с результирующей таблицей
    (в примере - имя листа Результат (подставить свой вариант; лист должен быть в книге)

    Всего записей: 11796 | Зарегистр. 03-12-2003 | Отправлено: 01:43 03-10-2013
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Uraanfgh56
    самое простое будет:
    решение 1) для А1 данных в ячейке В1 пишем =LEFT(A1,4) т.е. оставляем только последних 4 символа из исходных.
    или
    решение 2) для А1 данных в ячейке В1 пишем =REPLACE(A1,1,2,"") т.е. заменяем первые 2 символа на пустое место.
    Есть ещё некоторые решения позамороченнее.
     
    ALeXkRU
    Не, ни разу не VBA ))

    Всего записей: 747 | Зарегистр. 10-11-2005 | Отправлено: 01:58 03-10-2013 | Исправлено: vikkiv, 01:59 03-10-2013
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Uraanfgh56
    вариантов - полнО.. в такой постановке..
     
    =ЗАМЕНИТЬ(A1;1;2;"")
    (заменить (в ячейке А1) 2 символа, начиная с 1 (первого), на пустую строку)
     
    или
    =ПОДСТАВИТЬ(A1;"1-";"")
    (подставить в ячейке А1 в текст вместо "1-" пустую строку)
     
    или
    =ПРАВСИМВ(A1;4)
    (выбрать из текста (в ячейке А1) 4 символа с конца)
     
    и даже  
    =ПСТР(A1;3;4)
    (выбрать из текста в ячейке А1 четыре знака, начиная с 3-его)
     
    всё от конкретных условий зависит..
     
    ЗЫ: на самом деле, в таких случаях, проще ткнуть в ячейку и f(x) (вставить функцию), и, перебирая варианты, смотреть описание функций - оно довольно подробное заодно и узнаешь их получше...    
     
    Добавлено:
    vikkiv
    про левый - ты зря
     
    Добавлено:

    Цитата:
    Не, ни разу не VBA ))

    ну, можно, конечно, и послать куда надо в VBA - по рыжей строчке.. Но, раз уж заморочился.. да ещё, так и не дождавшись нормальной постановки задачи..

    Всего записей: 11796 | Зарегистр. 03-12-2003 | Отправлено: 02:18 03-10-2013 | Исправлено: ALeXkRU, 02:28 03-10-2013
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А ну да, косякнул, =RIGHT(A1,4) , лево с право путать обычное дело.

    Всего записей: 747 | Зарегистр. 10-11-2005 | Отправлено: 03:06 03-10-2013
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

    Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Excel FAQ (часть 5)
    Maz (27-03-2018 08:04): Microsoft Excel FAQ (часть 6)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru