Всем привет. Никто не знает, как и где можно отключить такое поведение Excel - когда открыл первый файл - он открывается нормально на всю высоту экрана, всё отлично. Но когда открываешь 2-й или далее файлы Excel (даже если просто создать пустую книгу через CTRL + N), то вот это второе (3-е, 4-е, 5-е и т.д.) окно открывается со смещением вниз на 1-2 сантиметра от верхнего края, см. фото, показал красными стрелками. Как это поведение можно отключить? P.S. (у меня Office 365). Это косяк/настройки Office или Windows ? Сейчас попробовал тоже самое в Word - всё отлично, нажал много раз Ctrl+N - каждое новое окно открывается полностью на весь экран. А вот Excel второе и далее окна смещает вниз
Всем привет. Кто подскажет, как макросом выравнить картинки внутри ячейки. Проблема в том, что картинки выходят за границы своих ячеек и только центра картинки попадает на ячейку, куда нужно поместить эту картинку. Прикрепил файл и на соседнем листе показал, как хотелось бы получить. Я знаю про TopLeftCell и BottormRightCell - но они попадают на соседние ячейки (одна выше, другая ниже нужной ячейки). У меня таких картинок 6000 штук, и какие-то правильно размещены (т.е. внутри ячейки), а какие-то картинки выходят за пределы своей ячейки и только центр картинки находится внутри нужной ячейки.
Всем привет. У меня есть работающий запрос. Смысл кода - отфильтровать таблицу, где нет чисел от 0 до 9 в первом столбце ("Товар"). Код работает, но в коде жёстко написано название поля "Товар", а мне хотелось бы указать именно номер первого столбца, т.к. название может когда-нибудь измениться. Кто подскажет?
Код
let
a = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
b = Table.ColumnNames(a),
f =(x)=> not List.ContainsAny({x}, {"0".."9"}, Text.Contains),
c = Table.SelectRows(a, (r)=> f(r[Товар])) //Работает
//c = Table.SelectRows(a, each f([Товар])) //Работает
in
c
у меня есть строка b = Table.ColumnNames(a), где я получаю названия полей таблицы, но если я пишу вот так, то не работает
Написал 3 макроса по удалению пустых строк. 1. макрос собирает все строки через Union и удаляет их за 1 раз - МЕДЛЕННЫЙ почему? 2. макрос удаляет в цикле КАЖДУЮ строку снизу вверх - быстрее, чем первый. Почему это быстрее, чем Union? ) 3. тот же макрос, что и второй, только если его запустить на НЕАКТИВНОМ листе - самый быстрый - почему? )
Коллеги, что за косяк с форумом - копируешь макрос с форума, вставляешь себе в редактор VBA - а код подствечивается ошибками. Перед строками Dim, If, End With, End If добавляется символ 160 (неразрывный пробел). Вот фото Во всех белых строках идёт 4 символа 160 (Chr(160)).
Всем привет. Подскажите, как решить эту задачу (без макросов) - можно ли её решить только формулами? Если формулами нельзя (макросом не нужно), то остаётся только PQ? То тогда, как решить её в PQ?
Всем привет. Вопрос спортивный. Есть код, который берёт с листа данные в массив (например, А1:J20), а дальше мы через функцию Application.Index выдёргиваем из этого массива строки с 10 по 20-ю без цикла. Вопрос - как вот в эту строку кода подставить свои переменные
т.е. вместо 10:20 и 1:10 подставить переменные a, b, c ?
Код
Sub Test()
Dim Arr As Variant, File_Array As Variant
'берём массив с листа 20 строк и 10 столбцов
Arr = Worksheets("Лист1").Range("A1:J20").Value
'выбираем строки из массива Arr начиная с 10-й по 20-ю и 10 столбцов
'аналог =ИНДЕКС(A1:J20;СТРОКА(10:20);СТОЛБЕЦ(1:10)) (формулу вводить в столбец А)
File_Array = Application.Index(Arr, [Row(10:20)], [Column(1:10)])
'обрезаем ненужные столбцы справа, т.к. их сейчас в массиве 16384
ReDim Preserve File_Array(1 To UBound(File_Array, 1), 1 To 10)
'выводим результат на Лист2
With Worksheets("Лист2")
.UsedRange.Clear
.Range("A1").Resize(UBound(File_Array), UBound(File_Array, 2)).Value = File_Array
End With
End Sub
Update: Отбой. Ответ на форуме наконец-то появился, но через 15 минут. Я ответил внутри темы в 8:02, а изменения в общем разделе появились в 8:16
Я ответил в теме, вернулся в общий раздел, но форум не показывает, что внутри темы есть второй ответ. См. 2 картинки. 1. Фото из общего форума, которая показывает, что внутри темы есть только 1 ответ от БМВ 2. Фото из самой темы, где есть мой ответ уже после ответа БМВ Такой глюк и если открыть форум с телефона, и с компа и в разных браузерах
Всем привет. На листе есть функция ВПР (=ВПР(A6;Лист2!A:G;2;0)) - как найти эту ячейку на листе макросом? Этот код не находит эту ячейку, хотя если нажать Ctrl+F и нажать Найти, то ячейка выделяется на листе
Код
Sub Test()
Dim Rng As Range
Set Rng = Cells.Find("=ВПР", , xlFormulas, xlPart)
If Not Rng Is Nothing Then
Rng.Activate
Else
MsgBox "Ячейка с '=ВПР' не найдена!", vbExclamation, ""
End If
End Sub
См. файл Кто подскажет, почему WorksheetFunction.SumIf в UDF считает некорректно (суммирует 2 строки, вместо одной), а если на листе написать =СУММЕСЛИ($A$2:$A$13;"2.1";$C$2:$C$13), то всё корректно. Критерий суммирования 2.1 В столбце А критерии 2.1, 2.2, 2.3 и т.д, в столбце С суммы.
Код
Function SumByOneCell(sCr$, rCrRange As Range, rSumRng As Range, Optional sDelim$ = ", ")
Dim x, s As String, dSum As Double
For Each x In Split(sCr, sDelim)
s = Trim(x)
If Len(s) Then
dSum = dSum + WorksheetFunction.SumIf(rCrRange, s, rSumRng) 'СУММЕСЛИ - не считает корректно
'dSum = dSum + WorksheetFunction.SumIfs(rSumRng, rCrRange, s) 'СУММЕСЛИМН - не считает корректно
End If
Next
SumByOneCell = dSum
End Function
Коллеги, всем привет. Если списки цифр в Word по 16 цифр (номера медицинских полюсов), как их скопировать из Word в Excel, чтобы 16-я цифра не конвертировалась в 0. Вот есть цифры 2191989796000041 7700002094724412 7700009118544113 Делаю Ctrl+C в Word и Ctrl+V в Excel и получаю 2191989796000040 7700002094724410 7700009118544110 Т.е. последние цифры заменяются на 0 (что логично для Excel). Формат ячеек у данного столбца менял на Текстовый перед вставкой в Excel - не помогает.
P.S. Разобрался. Надо сперва установить формат ячеек "Текстовый" в Excel, а потом вставлять не просто Ctrl+V, а через Спец вставку (Использовать конечное форматирование) и тогда вставляется как текст
Не знаю, поднимал ли кто-нибудь такой вопрос - Вам не кажется, что power query для тех, кто не умеет в VBA ? Я вот смотрю как люди бьются с PQ, но на VBA всё то же самое можно сделать и ещё гибче. или я не прав?
и щёлкнуть мышкой по ссылке "Открыть руководство по Excel" и откроется интерактивное руководство. Для его установки на ваш компьютер нужно открыть его и щёлкнуть по кнопке "Установить" в правом верхнем углу данного руководства.
Так же можно скачать Excel файл в формате .xltx, где на каждом листе отображается соответствие меню Excel 2003 и ленты Excel 2010. Скачать данный файл можно с этой страницы
Кто пользуется Excel 2007, то интерактивное руководство соответствий команд Excel 2003 и Excel 2007 можно посмотреть тут (откройте ссылку и нажмите Запуск руководства):
В файле присутствует макрос "Поиск Во Всех Файлах И Папках"
Данный макрос: 1. запрашивает текст для поиска (число, слово, выражение); 2. запрашивает папку для поиска; 3. уточняет, искать ли данные во вложенных папках (Папка1\Папка2\Папка3 и т.д.); 4. осуществляет поиск текста во всех файлах Excel, на всех листах, во всех вложенных папках (если в пункте 3 ответили "Да") 5. создаёт отдельную книгу с листом "Отчёт", куда копирует найденную информацию целыми строками, с указанием папки, названия книги и листа, где было найдено
Если кому-то не понравится вид, в котором макрос отображает результат поиска, то он всегда сам сможет подкорректировать макрос под свои нужды (код открыт).
Если кто найдёт ошибки в коде - пишите, постараюсь исправить
Форумчане, всем добрый день! Помогите пожалуйста решить одну проблему! В расчетах используется функция случайного выбора (RandomSelect). Как сделать, чтобы при печати например 10 листов все они были разные??? Заранее СПАСИБО!
Кто мне может помочь вот с такой проблемкой. Как мы знаем ВПР может работать с книгой-источником, даже если она закрыта. Т.е. я открываю обе книги, прописываю функцию ВПР, закрываю книгу источник - а ВПР - у меня продолжает прекрасно вычислять данные из закрытой книги. Но, допустим, мне необходимо изменить сослаться на имя листа в формуле ВПР, которое записано в соседней ячейке, т.е. у меня сейчас есть такая формула
Президент России Дмитрий Медведев подписал 11 сентября указ, подготовленный Министерством связи и массовых коммуникаций Российской Федерации, который устанавливает в России новый официальный праздник – День программиста. Согласно этому документу, День программиста будет праздноваться в России на 256-й день года – 13 сентября, а если год високосный – 12 сентября.
P.S. Хоть в большинстве своём мы не программисты (например, я продакт-менеджер (закупщик)), но страсть попрограммировать разные макросы у меня, наверное, в крови ))
P.P.S. Я сегодня хорошо поработал, удовлетворил всех желающих своими макросами и пойду спать ) Всем сладких сноф!
Здравствуйте! Подскажите пожалуйста, есть ли способ ограничить зону действия мышки в файле Excel, для того чтобы пользователь не смог залазить куда ему не следует, и отменить появление контекстного меню при нажатии правой кнопки «мыши». Но это нужно только для одного файла, а не для всей программы.
Немного доработал Web browser от Seergy, который он сегодня выложил в топике про курсы валют. Может кому пригодится, при том про него часто спрашивают на разных форумах.
человек с ником Шпец Докапыч немного доработал эту функцию, чтобы она работала и с закрытым файлом.
На мой взгляд очень интересный вариант, если кто-нибудь пользуется этой функцией
Я подготовил небольшой архив из 3х файлов, который визуально объясняет суть проблемы
1) файл Table.xls - файл с нужной табличкой 2) файл vlookup2.xls - файл с табличкой и функцией VLOOKUP2 от Николая Павлова 3) файл vlookup3.xls - файл с функциями VLOOKUP2 и VLOOKUP3, которые ссылаются на файл Table.xls
Чтобы у вас нормально заработали функции пропишите свой путь к файлу Table.xls в ячейках с функциями
Как видно, если файл Table.xls открыт - обе функции нормально работают. Но если же мы закроем Table.xls, то корректно показывает информацию функция VLOOKUP3, а функция VLOOKUP2 выдаёт значение #ЗНАЧ!
Предыстория. На каком-то форуме (скорее всего на этом) кто-то задавал вопрос, как найти какие числа в сумме дают заданное число. Обычно это бухгалтерам нужно. К примеру, есть 100 разных чисел, нужно найти какие числа в сумме дают 3544,55. Т.е. надо перебрать все числа и показать, что 5-е, 25-е, 40-е число в сумме дают нам 3544,55.
Решив помочь человеку, я нашёл на каком-то иностранном сайте макрос, которые делает такой перебор и выдаёт результат (вроде на новый лист) и выложил его. А теперь сам не могу найти этот файл.
Вопрос. Кто знает/помнит где это обсуждалось? Может у кого есть макросы по нахождению чисел, которые в сумме дают нужное число.
Перерыл поиск по этому сайту и по инету. Но никак не могу найти такой макрос.
Сегодня ночью делать было нечего и я решил написать макрос, который будет вытягивать цитаты с Bash.org в Excel, где их можно будет читать по одной. Просто так, для себя. Я уверен, что таких прог море. Но мне хотелось свою. Может кому будет интересно ) См. файл