Здравствуйте! Возможно (наверняка), такое уже было, но Есть такой вот табель, ведут его сами сотрудники - заполняют время начала и окончания рабочего дня, а так же общее количество но столбец "итого" с общим количеством наработанных часов используется формулой в другом документе. И, дабы избежать пере- и недоработок хотелось бы подсчитывать его формулой. C тем самым вопрос знатокам: есть в excel возможность конвертировать время в столбцах в человекочасы и в итоге складывать в целое число? Или, подскажите, пожалуйста, в какую сторону копать. Чтобы без нагромождения доп. столбцов и прочих макросов
Sub ColorCompanyDuplicates()
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xChar As String
Dim xCellPre As Range
Dim xCIndex As Long
Dim xCol As Collection
Dim I As Long
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
xCIndex = 2
Set xCol = New Collection
For Each xCell In xRg
On Error Resume Next
xCol.Add xCell, xCell.Text
If Err.Number = 457 Then
xCIndex = xCIndex + 1
Set xCellPre = xCol(xCell.Text)
If xCellPre.Interior.ColorIndex = xlNone Then xCellPre.EntireRow.Interior.ColorIndex = xCIndex
xCell.EntireRow.Interior.ColorIndex = xCellPre.EntireRow.Interior.ColorIndex
ElseIf Err.Number = 9 Then
MsgBox "Too many duplicate companies!", vbCritical, "Kutools for Excel"
Exit Sub
End If
On Error GoTo 0
Next
End Sub
Доброго выходного дня, форум! Есть макрос, честно стащенный отсюда Работает прекрасно, за что автору огромное спасибо. Подскажите, пожалуйста, каким образом допилить, чтобы макрос красил строку целиком, а не только столбец?
MagicUA, , раз номера разные, так и условие можно объединить, если я все правильно понимаю
Код
If b.Value2 = "Чехол для iPhone Xs Max" Then Cells(b.Row, "N") = "50160780"
If b.Value2 = "Чехол-книжка для iPhone Xs Max" Then Cells(b.Row, "N") = "соответствующие цифры"
Не знаю, насколько будет правильно мое решение для 10 000 значений. Скорее всего абсолютно не. Но за неимением основы
попробуйте как-то так
Код
Sub price()
Dim a, b As Range
Set a = Range("B1:B55")
For Each b In a
If b.Value2 = "iPhone Xs Max" Then Cells(b.Row, "N") = "50160780"
If b.Value2 = "iPhone Х" Then Cells(b.Row, "N") = "50160781"
Next
Set rng = Nothing
End Sub
А границы вообще в файле отрисованы? (Вкладка "Главная" -> "Шрифт" -> "Границы" -> "Все границы"). Без приложенного примера такое себе знакомство с проблемой. P.S. Браузер-то у нас есть, у нас файла с таблицей нет
Fsociety_, в том же файле, что послужил исходником для Вашего примера, есть соответствующий макрос с нужной функцией. Сочетание клавиш ALT и F11 вызовет редактор кода
Доброго времени суток! Скорее не просьба о помощи, а вопрос для тех, кто когда-то с подобным сталкивался. Есть официальная база адресов ФИАС тыц в формате .dbf и .xml. Качать много, а сюда более 100 Кб не приложить, посему ссылка на ЯД тыц для 06 региона - Ингушетии (весит поменее прочих). По содержимому базы ради интереса посмотреть можно тут тыц. DBF спокойно открывается в Excel. Но каждый из файлов содержит конкретный набор данных. А именно:
ADDROBJ - Классификатор адресообразующих элементов (край > область > город > район > улица)
HOUSE - Сведения по номерам домов улиц городов и населенных пунктов, номера земельных участков и т.п
NORMDOC - Сведения по нормативному документу, являющемуся основанием присвоения адресному элементу наименования
Как-то можно их консолидировать, приведя в формат Город | Улица | Дом ? Может, в этом плане работать с XML таки лучше? Или Excel для такого дела вообще не годится?
Ни тот, ни другой не могут прожевать большие объемы данных в купе с 2013 версией Excel на машине с достаточно неплохой офисной начинкой. Допускаю, конечно, корень проблемы в прокладке между креслом и клавиатурой. Всем спасибо и хорошего дня!
Вы свой текст запишите в А1, макрос оттуда будет брать значение для поиска
но есть ли возможность вставки не искомого текста, а своего, в контексте Вашего примера?Макрос нашел содержимое "А1" во всех последующих строках, а в "G2:G" помещает сообщение об этом, без дублирования текста запроса в столбец "G"
Цитата
Fuzzy LookUp
Знаю про него, но, к сожалению, умные таблицы не годятся для конкретного конечного пользователя
Пытливый, спасибо за отличный доходчивый пример! Единственное, что не могу, так это подставить вместо искомого значения свой текст, допустим, "содержит"
Код
Do
objR.Offset(0, 6) = Range("A1")
set objR.Value = "содержит"
В первой строке таблицы текст: "мама мыла раму", во второй строке таблицы текст "мыла раму мама", мой макрос конкретизирует запрос и ищет фразу "мама мыла раму" целиком, подставляя в соседний столбец первой строки "Нашлось!". Мне же хочется реализовать поиск по части фразы. Для этого конкретного примера обе фразы содержат сочетание "мыла раму". По запросу этого сочетания напротив обеих строк в теории появляется результат - "Нашлось!"
Есть такой вот макрос, который пробегает по документу в поисках четких совпадений условия с текстом в ячейке и заполняет соседние столбцы автоматически. Внимание, вопрос: есть возможность средствами VBA реализовать поиск нечетких вхождений, т.е. при поиске "текст" включать в выборку "текст текст" и т.д., "текстовый текст", по типу работы фильтра: "найти" - "содержит" - "заменить"?
Таких "уникальных", отличающихся ничем с точки зрения логики значений порядка 50 000
Код
Sub magic()
Dim a, b, c As Range
Set a = Range("A1:A30")
For Each b In a
If b.Value2 = "Оригинальный текст" Then Cells(b.Row, "B") = "нашлось"
If b.Value2 = "Тут что-то другое" Then Cells(b.Row, "C") = "тоже нашлось"
If b.Value2 = "А вот тут тоже текст" Then Cells(b.Row, "D") = "и это нашлось, но это же тоже Оригинальный текст"
Next
Set a = Nothing
MsgBox "Все дословные совпадения найдены"
Такой вот путь пришел на ум тернистый: 1. Вынесем столбцы "D","E" в отдельную книгу (они станут "А" и "В" соответственно) 2. Используем любые два пустых столбца, пусть это будут освободившиеся "D" и "E", в которые вытянем ID товара из конца ссылок столбца "С" следующим образом: 2.1 отсечем формулой =ПРАВСИМВ(С1;5) начало ссылки в столбце D, формулу растянем на весь список 2.2 отсечем формулой =ЛЕВСИМВ(D1;5) оставшийся слэш в столбце E, формулу растянем на весь список 3. По получившемуся ID в качестве ключа (столбец "E" и столбец "В") склеим все простым запросом средствами Access, результат экспортируем в Excel
Доброго времени суток, форум! Подскажите, пожалуйста, как правильно в синтаксисе VBA выразить свои требования к нашему любимому Excel. Красит строки верно, а вот значение в соседний столбец поставить не хочет, везде ставит 1
Код
Sub color_2()
Dim rng As Range
Dim rng2 As Range
Set rng = Range("A1:A30")
rng.EntireRow.Interior.ColorIndex = -4142
For Each rng2 In rng
If rng2.Value2 = "раз" Then Cells(rng2.Row, 1).EntireRow.Interior.ColorIndex = 8
If rng2.Value2 = "два" Then Cells(rng2.Row, 1).EntireRow.Interior.ColorIndex = 6
If rng2.Value2 = "раз" Then Range("B1:B30") = "1"
If rng2.Value2 = "два" Then Range("B1:B30") = "2"
Next
Set rng = Nothing
End Sub
Юрий М, ничего не происходит у меня, в результате использования такого сочетания клавиш UPD создается пустая строка в таблице, если текст поместить в нее предварительно
Доброго субботнего вечера, форумчане! В общем-то, проблема в следующем - есть текст, который необходимо разбить на части. Каждый абзац в отдельную ячейку таблицы. Вручную вставлять 500+ страниц текста очень уж накладно. Может, кто сталкивался когда с подобным или же просто может подсказать, как возможно реализовать? Запись макроса вручную не особо-то помогает Гугл уже скоро меня забанит)
JayBhagavan, спасибо нет, сводная не устраивает по причине большого количества телодвижений, хотелось бы автоматизировать.. К сожалению, не особо дружу с синтаксисом VBA, только начала свое с ним ознакомление.
Всем привет! Есть таблица с 1000+ значениями в разных столбцах. В одном из них они могут повторяться. например, фамилия. Подскажите, пожалуйста, как макросом сделать объединение ВСЕХ строк с одинаковой фамилией в одну, а значения из соседнего столбца сложить и поместить в эту же строку? При этом повторная строка, содержащая фамилию полностью исчезает. P.S. Админ, я действительно Алиса Селезнева В ВК не верят, в ФБ тоже, еще и тут..
Код
Sub m()
Dim i, n As Long
Range("A1:A500, B1:B500").
For i, n = 1 To 5000
If Cells(i, 1) = Cells(i, n) Then
If Cells(i, 2) = Cells(i, n) Then
Next
End Sub